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 }