IOS 清除和計(jì)算緩存

1.計(jì)算緩存大小


    //計(jì)算緩存文件大小
    func fileSizeOfCache() -> Int {
        //取出cache文件目錄
        let cachePath = NSSearchPathForDirectoriesInDomains(NSSearchPathDirectory.CachesDirectory, NSSearchPathDomainMask.UserDomainMask, true).first

        //取出文件夾下文件數(shù)組
        let fileArr = NSFileManager.defaultManager().subpathsAtPath(cachePath!)
        
        var size = 0
        //快速枚舉出所有文件夾計(jì)算大小
        for file in fileArr! {
            //將文件名拼接到路徑中
            let path = cachePath?.stringByAppendingString("/\(file)")
            
            //取出文件屬性
            let floder = try! NSFileManager.defaultManager().attributesOfItemAtPath(path!)
            
            //用元組取出文件大小屬性
            for (abc, bcd) in floder {
                if abc == NSFileSize {
                    size += bcd.integerValue
                }
            }
        }
        let mm = size / 1024 / 1024
        return mm
        
    }

2.清除緩存


//清除緩存
    func clearCache() {
        
        //取出緩存文件目錄
        let cachePath = NSSearchPathForDirectoriesInDomains(NSSearchPathDirectory.CachesDirectory, NSSearchPathDomainMask.UserDomainMask, true).first
        
        //取出文件夾下所有文件數(shù)組
        let fileArr = NSFileManager.defaultManager().subpathsAtPath(cachePath!)
        
        //遍歷刪除
        for file in fileArr! {
            let path = cachePath?.stringByAppendingString("/\(file)")
            if NSFileManager.defaultManager().fileExistsAtPath(path!) {
                do {
                    try NSFileManager.defaultManager().removeItemAtPath(path!)
                }catch{}
            }
        }
        NSThread.sleepForTimeInterval(0.1)
        HHAlertView.shared().showAlertWithStyle(HHAlertStyle.Ok, inView: self.view, title: "清除緩存成功", detail: "目前剩余緩存0M", cancelButton: nil, okbutton: "確定")
    }
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 記錄一下iOS開(kāi)發(fā)中的設(shè)置界面經(jīng)常用到的清理緩存功能的代碼實(shí)現(xiàn)。 一、流程介紹 緩存文件存到了沙盒...
    是刺猬閱讀 934評(píng)論 0 5
  • App后期優(yōu)化必須要考慮的問(wèn)題——緩存。App基本功能——清除緩存。最近在做清除緩存的功能,所以好好研究了一下。這...
    墨痕未干閱讀 2,187評(píng)論 0 14
  • 幾乎每個(gè)應(yīng)用都有清除緩存的功能,一個(gè)應(yīng)用的使用難免會(huì)產(chǎn)生緩存,如文件緩存、圖片緩存,我們大部分應(yīng)用使用的SDWeb...
    杰森_Jason閱讀 511評(píng)論 0 1
  • 1.首先,一般我們項(xiàng)目中的緩存一般分為2大塊,一個(gè)是自己緩存的一些數(shù)據(jù);還有一個(gè)就是我們使用的SDWebImage...
    cd5e2b81487d閱讀 5,912評(píng)論 6 25
  • 緩存默認(rèn)存儲(chǔ)在cache中,APPStore中有一條明確規(guī)定,你的APP中緩存文件只能保存在沙盒路徑下Caches...
    逍遙晨旭閱讀 7,561評(píng)論 1 14

友情鏈接更多精彩內(nèi)容