亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁(yè) > 開(kāi)發(fā) > 綜合 > 正文

Lua中實(shí)現(xiàn)遞歸刪除一個(gè)文件夾

2024-07-21 23:04:23
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

在使用 quick-cocos2d-x 做項(xiàng)目熱更新的時(shí)候,我需要建立臨時(shí)文件夾以保存下載的更新包。在更新完成后,我需要?jiǎng)h除這些臨時(shí)文件和文件夾。

cocos2d-x 和 quick-cocos2d-x 都沒(méi)有提供刪除文件夾功能。我做了如下2個(gè)嘗試:

1. 使用C++

在 cocos2d-x 2.x 中的 AssetsManager 包中提供了一個(gè) CreateDirectory 方法。這個(gè)方法可以跨平臺(tái)支持創(chuàng)建文件夾。在實(shí)際項(xiàng)目中運(yùn)行沒(méi)有問(wèn)題。

 

復(fù)制代碼 代碼如下:

bool AssetsManager::createDirectory(const char *path)
{
#if (CC_TARGET_PLATFORM != CC_PLATFORM_WIN32)
    mode_t processMask = umask(0);
    int ret = mkdir(path, S_IRWXU | S_IRWXG | S_IRWXO);
    umask(processMask);
    if (ret != 0 && (errno != EEXIST))
    {
        return false;
    }

 

    return true;
#else
    BOOL ret = CreateDirectoryA(path, NULL);
if (!ret && ERROR_ALREADY_EXISTS != GetLastError())
{
return false;
}
    return true;
#endif
}


在 cocos2d-x 2.x 的 AssetsManager sample 范例中提供了一個(gè) reset 方法,這個(gè)方法使用系統(tǒng)命令遞歸刪除文件夾。
復(fù)制代碼 代碼如下:

void UpdateLayer::reset(cocos2d::CCObject *pSender)
{
    pProgressLabel->setString(" ");

 

    // Remove downloaded files
#if (CC_TARGET_PLATFORM != CC_PLATFORM_WIN32)
    string command = "rm -r ";
    // Path may include space.
    command += "/"" + pathToSave + "/"";
    system(command.c_str());
#else
    string command = "rd /s /q ";
    // Path may include space.
    command += "/"" + pathToSave + "/"";
    system(command.c_str());
#endif
    // Delete recorded version codes.
    getAssetsManager()->deleteVersion();

    createDownloadedDir();
}


但是,這個(gè) reset 在 ios 模擬器中運(yùn)行的時(shí)候,xcode會(huì)報(bào)這樣的warinng:

 

The iOS Simulator libSystem was initialized out of order. This is most often caused by running host executables or inserting host dylibs. In the future, this will cause an abort.

因此,我轉(zhuǎn)而考慮另一個(gè)方案。

2. 純lua

純 lua 其實(shí)是個(gè)噱頭。這里還是要依賴 lfs(lua file sytem),好在 quick-cocos2d-x 已經(jīng)包含了這個(gè)庫(kù)。

lfs.rmdir 命令 和 os.remove 命令一樣,只能刪除空文件夾。因此實(shí)現(xiàn)類似 rm -rf 的功能, 必須要遞歸刪除文件夾中所有的文件和子文件夾。

讓我們擴(kuò)展一下 os 包。

復(fù)制代碼 代碼如下:

require("lfs")

 

function os.exists(path)
    return CCFileUtils:sharedFileUtils():isFileExist(path)
end

function os.mkdir(path)
    if not os.exists(path) then
        return lfs.mkdir(path)
    end
    return true
end

function os.rmdir(path)
    print("os.rmdir:", path)
    if os.exists(path) then
        local function _rmdir(path)
            local iter, dir_obj = lfs.dir(path)
            while true do
                local dir = iter(dir_obj)
                if dir == nil then break end
                if dir ~= "." and dir ~= ".." then
                    local curDir = path..dir
                    local mode = lfs.attributes(curDir, "mode")
                    if mode == "directory" then
                        _rmdir(curDir.."/")
                    elseif mode == "file" then
                        os.remove(curDir)
                    end
                end
            end
            local succ, des = os.remove(path)
            if des then print(des) end
            return succ
        end
        _rmdir(path)
    end
    return true
end


上面的代碼在 iOS 模擬器和 Android 真機(jī)上測(cè)試成功。Windows系統(tǒng)、Mac OSX 以及 iOS 真機(jī)還沒(méi)有測(cè)試。我測(cè)試后會(huì)立即更新。
發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
欧美亚洲视频在线观看| 欧美色老女人| 粗大的内捧猛烈进出在线视频| 在线观看国产一区二区三区| 口述被爽到呻吟高潮自述| 亚洲精品一区二三区不卡| 欧美日本在线看| 很黄的网站在线观看| 成人免费视频91| 中文字幕不卡三区视频| 久久波多野结衣| 日日噜噜噜夜夜爽亚洲精品| 精品久久久久久久久国产字幕| 在线观看国产网站| 国产精品视频500部| 一区二区三区久久精品| 国产女人aaa级久久久级| chinese叫床对白videos| 日韩国产一区二区| 久久久久久国产精品免费播放| 欧美午夜一区二区| 中文字幕国产专区| av欧美精品.com| 白丝校花扒腿让我c| 欧美亚洲综合网| 国产精品一区久久| 青青草视频在线观看| 看电影就来5566av视频在线播放| 蜜桃一级网站.| 亚洲一二三四久久| 热久久天天拍国产| 国产裸体歌舞团一区二区| 不卡中文字幕| 巨胸喷奶水www久久久| 波多野结衣家庭教师在线观看| 岛国精品一区二区| 日韩成人黄色av| 国产模特精品视频久久久久| 欧美一级视频免费观看| 欧美视频久久久| 在线看成人av| av成人动漫在线观看| 国产精品久久无码| 少妇人妻在线视频| 蜜臀精品一区二区| 熟妇人妻一区二区三区四区| 高h视频在线| 丰满熟妇人妻中文字幕| 日本青青草视频| 青檬在线电视剧在线观看| 欧美黄片一区二区三区| 久久夜色精品国产欧美乱极品| 日韩精品一区二区亚洲av观看| 亚洲经典一区| 久久美女福利视频| 7777精品伊人久久久大香线蕉最新版| 国产h视频在线播放| 黄色片视频网站| 国产精品久久久久91| 午夜黄色在线观看| 污香蕉视频在线观看| 日韩欧美精品中文字幕| 插我舔内射18免费视频| 国产欧美精品一区二区色综合朱莉| 91久久精品在线| 免费观看30秒视频久久| 一区二区三区不卡在线视频| 国产成人综合网站| 久久夜色精品亚洲| 激情综合网五月婷婷| 牛牛影视一区二区三区免费看| 国产sm调教视频| 欧美成人高清电影在线| 亚洲不卡系列| 久久国产精品一区| 中文字幕欧美人与畜| 成人网在线视频| 午夜爽爽爽男女免费观看| 国产网址在线观看| 夜级特黄日本大片_在线| 一区二区视频在线观看| 亚洲精品乱码久久| 精品一区二区三区在线观看国产| 亚洲精品在线观看网站| 亚洲精品视频二区| 午夜老司机精品| 欧美日韩一区二区三区视频播放| 亚洲精品裸体| 超级污的网站| 私密视频在线观看| 男人的天堂久久久| 岛国av免费在线观看| 久久婷婷综合色| av观看成片免费网站| 双性尿奴穿贞c带憋尿| 欧美精品一二三区| 国产又色又爽又黄刺激在线视频| 中文字幕有码在线播放| 久久精品国产清高在天天线| 国产精品69精品一区二区三区| 精品久久一区二区三区蜜桃| 7777精品伊人久久久大香线蕉经典版下载| 久久久久久av无码免费看大片| aa视频在线播放| 人与牲动交xxxxbbbb高清| 成人在线视频网| 久久久久久久久久久久| 中文字幕成在线观看| 国产欧美在线一区| 亚洲成av人片在线观看香蕉| 国产视频视频一区| 欧美日韩一区二区三区在线免费观看| 日韩影视高清在线观看| 色嗨嗨av一区二区三区| 日韩永久免费视频| 色诱亚洲精品久久久久久| 77thz桃花论族在线观看| 国产精品二区一区二区aⅴ污介绍| 蜜桃臀av在线| av首页在线| 日韩高清三级| 看欧美ab黄色大片视频免费| 国产亚洲精品美女久久久久久久久久| 91视频在线| 欧美激情一区三区| 欧美91精品久久久久国产性生爱| 亚洲欧洲一区二区三区久久| 99成人在线观看| 婷婷视频在线| 亚洲一区二区三区在线观看视频| 国产一区二区在线视频聊天| 国产一区二区三区免费不卡| 亚洲最大中文字幕| 国产精品一区二区av影院萌芽| 日日摸夜夜夜夜夜添| 国产成人羞羞电影网站在线观看| 黄色小视频免费网站| 国产三级伦理在线| 日本精品一区二区三区四区的功能| 国产亚洲精品91在线| 麻豆一区产品精品蜜桃的特点| 亚洲精品乱码日韩| 亚洲欧美在线免费观看| 白白色亚洲国产精品| 99在线精品视频免费观看软件| 亚洲一区在线免费观看| 日韩毛片免费观看| 国产主播福利| 韩国精品主播一区二区在线观看| 久草在线最新视频| 国产成人久久久精品一区| 91网站在线看| 自拍偷拍欧美专区| 丰满诱人av在线播放| 波多野结衣久草一区| 中文字幕在线久热精品| 18成人免费观看视频| 久久久蜜臀国产一区二区| 欧美日一区二区| 99视频一区二区| 久久久噜噜噜www成人网| 天堂资源在线视频| 你微笑时很美电视剧整集高清不卡| 日韩在线播放一区二区| 亚洲成人免费av| 国产人妻精品午夜福利免费| 日韩精品一区二区亚洲av| 国产超碰精品在线观看| 狠狠爱免费视频| 亚洲av永久纯肉无码精品动漫| 老子影院午夜伦不卡大全| 亚洲网站在线免费观看| 天天摸天天操天天干| 精品露脸国产偷人在视频| 亚洲免费av一区二区三区| 奇米一区二区三区av| 777奇米成人网| 成年人视频在线| 99国产精品久久久久99打野战| 欧美高清www午色夜在线视频| 久久米奇亚洲| 亚洲成在人线免费观看| 黄色网址免费在线观看| 激情视频一区二区| 丁香花在线影院观看在线播放| 污污视频免费看| 欧美××××黑人××性爽| 在线国产日韩| 午夜久久久久久久久久久| 99视频在线视频| 久久国产精品国语对白| 亚洲一区二区三区| 婷婷夜色潮精品综合在线| 国产成人在线小视频| 清纯唯美激情亚洲| 91精品久久久久久久久中文字幕| 麻豆精品国产自产在线| 亚洲第一狼人社区| 亚洲国产高清高潮精品美女| jizzjizz韩国| 精品亚洲a∨| 日本三级一区二区三区| 久久亚洲精品毛片| 久久精品免费网站| www.爱爱.com| 亚洲日产国产精品| 亚洲最大成人网站| 26uuu亚洲电影在线观看| 日韩av新片网| 色婷婷av一区二区三区之e本道| 国产乱人伦偷精品视频不卡| 少妇一区视频| 蜜臀精品一区二区三区| 欧美国产乱视频| 国产成人免费高清视频| 国产精品偷伦视频免费观看了| 亚洲国产古装精品网站| 国产男小鲜肉同志免费| www视频在线播放| 亚洲精品乱码久久久久久蜜桃动漫| 男人扒开美女尿口无遮挡图片| 国产在线看片免费视频在线观看| 亚洲久久久久| 成人激情小说网站| 免费毛片在线| 欧美激情黑白配| 99精品桃花视频在线观看| 国产精品色哟哟网站| 欧美成人一区在线观看| 日韩精品视频播放| 亚洲已满18点击进入在线看片| 男女黄床上色视频| 亚洲精品乱码久久久久久久| 国产精品美女一区二区视频| 国产资源在线免费观看| 欧美日韩在线大尺度| 福利视频导航大全| 日本激情小视频| 神马久久久久久久| 欧美蜜桃一区二区三区| 91香蕉国产线在线观看| 亚洲精华液一区二区三区| 亚洲欧美中文另类| 天堂av一区二区| 精品视频麻豆入口| 欧美一区二区三区艳史| 黄色片免费大全| 99超碰麻豆| 国产日产一区| 亚洲一二三四在线| 青青草成人免费在线视频| 欧美性天天影院| 日韩欧美国产成人| 国产精品福利一区| 中日韩午夜理伦电影免费| 婷婷亚洲婷婷综合色香五月| 久久久久久中文字幕| 日本aⅴ写真网站免费| 欧美激情一区二区三区高清视频| 日韩乱码在线视频| www.欧美日韩国产在线| 亚洲欧美日韩一区二区三区在线观看| 国产精品久久久久久久美男| 在线成人av网站| 性欧美精品高清| 国产馆手机在线观看| 在线观看一级片| 久久先锋影音av鲁色资源网| 亚洲va欧美va国产综合剧情| 午夜av入18在线| 亚洲国产精品推荐| 美女航空一级毛片在线播放| 国产美女一区二区| 久久中文字幕一区二区三区| 黄色a级片免费| a视频网址在线观看| 久久6精品影院| 亚洲一卡二卡三卡四卡无卡久久| 欧美少妇激情| xx00欧美| 国产无套精品一区二区| 裸体武打性艳史| 亚洲综合网站在线观看| 免费在线观看污污视频| 亚洲天堂第一页| 精品国产精品| 日本不卡一二三区黄网| 欧美成人在线影院| 五月天亚洲视频| xxxxxhd亚洲人hd| 午夜视频一区二区三区| 亚洲男人天天操| 黄网址在线永久免费观看| 日韩啪啪网站| 亚洲电影天堂av| 亚洲精品合集| 国产精东传媒成人av电影| 久久精品欧美一区二区三区不卡| 天天操天天干天天爱| 91tv官网精品成人亚洲| 手机福利视频欧美| 午夜一级免费视频| 欧美一区1区三区3区公司| 日韩毛片在线观看| 国产欧美日韩免费| 欧美美女一区二区在线观看| 91精品综合久久久久久| 国产日韩欧美一区| 激情五月深爱五月| 免费观看一级视频| 香港一级纯黄大片| 五月亚洲综合| 日韩视频二区| 成人在线免费网站| 日韩新的三级电影| 亚洲欧美中文日韩在线v日本| 国产一区二区三区四区大秀| www日韩精品| 特级西西444www高清大视频| 中文字幕人妻一区二区三区在线视频| 亚洲精品欧美一区二区三区| 亚洲欧美国产精品va在线观看| 免费网站你懂的| 久久爱91午夜羞羞| 韩国三级丰满少妇高潮| 在线观看免费不卡av| 波多野结衣亚洲一区| 中文幕无线码中文字蜜桃|