国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 系統(tǒng) > iOS > 正文

iOS開(kāi)發(fā)之1行代碼實(shí)現(xiàn)緩存計(jì)算及清除緩存

2020-07-26 01:28:41
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

話不多說(shuō),直接擼代碼

//// gzhCache.h// cache//// Created by 郭志賀 on 2020/5/27.// Copyright © 2020 郭志賀. All rights reserved.//#import <Foundation/Foundation.h>NS_ASSUME_NONNULL_BEGIN@interface gzhCache : NSObject/// 計(jì)算緩存大小+(float)filePath;/// 清理緩存+(void)clearCache;@endNS_ASSUME_NONNULL_END
//// gzhCache.m// cache//// Created by 郭志賀 on 2020/5/27.// Copyright © 2020 郭志賀. All rights reserved.//#import "gzhCache.h"@implementation gzhCache// 顯示緩存大小+ (float)filePath {  NSString * cachPath = [ NSSearchPathForDirectoriesInDomains ( NSCachesDirectory , NSUserDomainMask , YES ) firstObject ];  return [ self folderSizeAtPath :cachPath];}//計(jì)算單個(gè)文件的大小+ (long long) fileSizeAtPath:( NSString *) filePath{  NSFileManager * manager = [ NSFileManager defaultManager ];  if ([manager fileExistsAtPath :filePath]){    return [[manager attributesOfItemAtPath :filePath error : nil ] fileSize ];  }  return 0 ;}//遍歷文件夾獲得文件夾大小,返回多少M(fèi)+ (float)folderSizeAtPath:(NSString *)folderPath{  NSFileManager * manager = [ NSFileManager defaultManager ];  if (![manager fileExistsAtPath :folderPath]) return 0 ;  NSEnumerator *childFilesEnumerator = [[manager subpathsAtPath :folderPath] objectEnumerator ];  NSString * fileName;  long long folderSize = 0 ;  while ((fileName = [childFilesEnumerator nextObject ]) != nil ){    NSString * fileAbsolutePath = [folderPath stringByAppendingPathComponent :fileName];    folderSize += [ self fileSizeAtPath :fileAbsolutePath];  }  return folderSize/( 1024.0 * 1024.0 );}//清理緩存+ (void)clearCache {  NSString * cachPath = [ NSSearchPathForDirectoriesInDomains ( NSCachesDirectory , NSUserDomainMask , YES ) firstObject ];  NSArray * files = [[ NSFileManager defaultManager ] subpathsAtPath :cachPath];  NSLog ( @"cachpath = %@" , cachPath);  for ( NSString * p in files) {    NSError * error = nil ;    NSString * path = [cachPath stringByAppendingPathComponent :p];    if ([[ NSFileManager defaultManager ] fileExistsAtPath :path]) {      [[ NSFileManager defaultManager ] removeItemAtPath :path error :&error];    }  }  [ self performSelectorOnMainThread : @selector (clearCachSuccess) withObject : nil waitUntilDone : YES ];}+ (void)clearCachSuccess {  NSLog(@"清理成功");}@end

需要查詢大小的地方使用:

NSString *str = [NSString stringWithFormat:@"%.2fM",[gzhCache filePath]];

清理的方法調(diào)用

[gzhCache clearCache];

 以上內(nèi)容僅代表本菜鳥(niǎo)看法,復(fù)制可直接使用。如有不妥之處敬請(qǐng)告知。

好了,到此這篇iOS開(kāi)發(fā)之1行代碼實(shí)現(xiàn)緩存計(jì)算及清除緩存的文章就介紹到這了,更多相關(guān)iOS緩存計(jì)算及清除緩存內(nèi)容請(qǐng)搜索武林網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持武林網(wǎng)!

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 喀喇沁旗| 东至县| 凤冈县| 克什克腾旗| 阿瓦提县| 怀安县| 射洪县| 保定市| 封丘县| 西吉县| 天祝| 泽库县| 米脂县| 道真| 灵台县| 两当县| 聂拉木县| 叙永县| 嘉禾县| 遂昌县| 武陟县| 余干县| 珲春市| 洪洞县| 广东省| 丰镇市| 凉山| 会理县| 同德县| 寿宁县| 盱眙县| 嘉兴市| 东台市| 洛隆县| 五台县| 德兴市| 桐柏县| 高州市| 石棉县| 宜良县| 民勤县|