日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

ios html清除缓存图片,iOS,如何清理缓存的图片

發布時間:2023/12/1 编程问答 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 ios html清除缓存图片,iOS,如何清理缓存的图片 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

通常,在我們加載圖片的時候,一般都會做緩存處理,像SDWebImage,YYWebImage都是有的,但是有緩存,當然也需要清理緩存,如果沒有這個功能的話,顯得app太沒人性化。

獲取總的緩存大小

// 獲取某個路徑下是文件大小

+ (CGFloat)fileSizeAtPath:(NSString *)path {

NSFileManager *fileManager=[NSFileManager defaultManager];

if([fileManager fileExistsAtPath:path]) {

long long size=[fileManager attributesOfItemAtPath:path error:nil].fileSize;

return size/1024.0/1024.0;

}

return 0;

}

// 獲取總的緩存的大小

+ (CGFloat)folderSizeAtPath:(NSString *)path {

NSFileManager *fileManager=[NSFileManager defaultManager];

float folderSize;

if ([fileManager fileExistsAtPath:path]) {

NSArray *childerFiles=[fileManager subpathsAtPath:path];

for (NSString *fileName in childerFiles) {

NSString *absolutePath=[path stringByAppendingPathComponent:fileName];

folderSize +=[ClearCache fileSizeAtPath:absolutePath];

}

return folderSize;

}

return 0;

}

清除緩存

// 清理緩存

+ (void)clearCache:(NSString *)path {

NSFileManager *fileManager=[NSFileManager defaultManager];

if ([fileManager fileExistsAtPath:path]) {

NSArray *childerFiles=[fileManager subpathsAtPath:path];

for (NSString *fileName in childerFiles) {

/**

* 此處,也可以做 if () 判斷是否不需要刪除某些文件

*/

NSString *absolutePath=[path stringByAppendingPathComponent:fileName];

[fileManager removeItemAtPath:absolutePath error:nil];

}

}

// 這是用到 YYWebImageManager 中 YYImageCache 單獨需要刪除的

// [[YYWebImageManager sharedManager].cache.diskCache removeAllObjects];

// [[YYWebImageManager sharedManager].cache.memoryCache removeAllObjects];

}

然后直接調用就OK啦

[CacheFileManager clearCache:YOUR_PATH_CACHE];

self.contentLabel.text = [NSString stringWithFormat:@"%.1lf M",[CacheFileManager folderSizeAtPath:YOUR_PATH_CACHE]];

同時附上 磁盤總空間大小 和 磁盤可用空間大小

// 磁盤總空間大小

+ (CGFloat)diskOfAllSizeMBytes {

CGFloat size = 0.0;

NSError *error;

NSDictionary *dic = [[NSFileManager defaultManager] attributesOfFileSystemForPath:NSHomeDirectory() error:&error];

if (error) {

#ifdef DEBUG

NSLog(@"error: %@", error.localizedDescription);

#endif

}else{

NSNumber *number = [dic objectForKey:NSFileSystemSize];

size = [number floatValue]/1024/1024;

}

return size;

}

// 磁盤可用空間大小

+ (CGFloat)diskOfFreeSizeMBytes {

CGFloat size = 0.0;

NSError *error;

NSDictionary *dic = [[NSFileManager defaultManager] attributesOfFileSystemForPath:NSHomeDirectory() error:&error];

if (error) {

#ifdef DEBUG

NSLog(@"error: %@", error.localizedDescription);

#endif

}else{

NSNumber *number = [dic objectForKey:NSFileSystemFreeSize];

size = [number floatValue]/1024/1024;

}

return size;

}

總結

以上是生活随笔為你收集整理的ios html清除缓存图片,iOS,如何清理缓存的图片的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。