[筆記] Swift清除緩存

1.獲取緩存大小
//獲取緩存大小
    func getCacheSize() -> String {
        //cache文件夾
        let cachePath = NSSearchPathForDirectoriesInDomains(.cachesDirectory, .userDomainMask, true).first
        //文件夾下所有文件
        let files = FileManager.default.subpaths(atPath: cachePath!)!
        //遍歷計(jì)算大小
        var size = 0
        for file in files {
            //文件名拼接到路徑中
            let path = cachePath! + "/\(file)"
            //取出文件屬性
            do {
                let floder = try FileManager.default.attributesOfItem(atPath: path)
                for (key, fileSize) in floder {
                    //累加
                    if key == FileAttributeKey.size {
                        size += (fileSize as AnyObject).integerValue
                    }
                }
            } catch {
                print("出錯(cuò)了!")
            }
            
        }
        
        let totalSize = Double(size) / 1024.0 / 1024.0
        return String(format: "%.1fM", totalSize)
    }
2.清除緩存
//刪除緩存
    func clearCache() {
        MBProgressHUDSwift.showLoading()
        //cache文件夾
        let cachePath = NSSearchPathForDirectoriesInDomains(.cachesDirectory, .userDomainMask, true).first
        //文件夾下所有文件
        let files = FileManager.default.subpaths(atPath: cachePath!)!
        
        //遍歷刪除
        for file in files {
            //文件名
            let path = cachePath! + "/\(file)"
            //存在就刪除
            if FileManager.default.fileExists(atPath: path) {
                do {
                    try FileManager.default.removeItem(atPath: path)
                } catch {
                    print("出錯(cuò)了!")
                }
            }
        }
        MBProgressHUDSwift.dismiss()
        cacheSize = getCacheSize()
    }
另附SDWebImage清除緩存
       //獲取圖片緩存大小
       let sdCacheSize = SDImageCache.shared().getSize()
        //清理緩存
        SDImageCache.shared().clearDisk {
            
        }
?著作權(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)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

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

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