Lua脚本实现递归删除一个文件夹
rmdirinquick-cocos2d-xwithlua.
在使用quick-cocos2d-x做项目热更新的时候,我需要建立临时文件夹以保存下载的更新包。在更新完成后,我需要删除这些临时文件和文件夹。
cocos2d-x和quick-cocos2d-x都没有提供删除文件夹功能。我做了如下2个尝试:
1.使用C++
在cocos2d-x2.x中的AssetsManager包中提供了一个CreateDirectory方法。这个方法可以跨平台支持创建文件夹。在实际项目中运行没有问题。
boolAssetsManager::createDirectory(constchar*path)
{
#if(CC_TARGET_PLATFORM!=CC_PLATFORM_WIN32)
mode_tprocessMask=umask(0);
intret=mkdir(path,S_IRWXU|S_IRWXG|S_IRWXO);
umask(processMask);
if(ret!=0&&(errno!=EEXIST))
{
returnfalse;
}
returntrue; #else BOOLret=CreateDirectoryA(path,NULL); if(!ret&&ERROR_ALREADY_EXISTS!=GetLastError()) { returnfalse; } returntrue; #endif }