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ù)。