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];
}

然后直接調(diào)用就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;
}
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末请垛,一起剝皮案震驚了整個濱河市催训,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌宗收,老刑警劉巖漫拭,帶你破解...
    沈念sama閱讀 216,997評論 6 502
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異混稽,居然都是意外死亡采驻,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,603評論 3 392
  • 文/潘曉璐 我一進店門匈勋,熙熙樓的掌柜王于貴愁眉苦臉地迎上來礼旅,“玉大人,你說我怎么就攤上這事洽洁《幌担” “怎么了?”我有些...
    開封第一講書人閱讀 163,359評論 0 353
  • 文/不壞的土叔 我叫張陵饿自,是天一觀的道長汰翠。 經(jīng)常有香客問我,道長昭雌,這世上最難降的妖魔是什么复唤? 我笑而不...
    開封第一講書人閱讀 58,309評論 1 292
  • 正文 為了忘掉前任,我火速辦了婚禮烛卧,結(jié)果婚禮上佛纫,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好呈宇,可當我...
    茶點故事閱讀 67,346評論 6 390
  • 文/花漫 我一把揭開白布跟磨。 她就那樣靜靜地躺著,像睡著了一般攒盈。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上哎榴,一...
    開封第一講書人閱讀 51,258評論 1 300
  • 那天型豁,我揣著相機與錄音,去河邊找鬼尚蝌。 笑死迎变,一個胖子當著我的面吹牛,可吹牛的內(nèi)容都是我干的飘言。 我是一名探鬼主播衣形,決...
    沈念sama閱讀 40,122評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼姿鸿!你這毒婦竟也來了谆吴?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 38,970評論 0 275
  • 序言:老撾萬榮一對情侶失蹤苛预,失蹤者是張志新(化名)和其女友劉穎句狼,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體热某,經(jīng)...
    沈念sama閱讀 45,403評論 1 313
  • 正文 獨居荒郊野嶺守林人離奇死亡腻菇,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,596評論 3 334
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了昔馋。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片筹吐。...
    茶點故事閱讀 39,769評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖秘遏,靈堂內(nèi)的尸體忽然破棺而出丘薛,到底是詐尸還是另有隱情,我是刑警寧澤垄提,帶...
    沈念sama閱讀 35,464評論 5 344
  • 正文 年R本政府宣布榔袋,位于F島的核電站,受9級特大地震影響铡俐,放射性物質(zhì)發(fā)生泄漏凰兑。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,075評論 3 327
  • 文/蒙蒙 一审丘、第九天 我趴在偏房一處隱蔽的房頂上張望吏够。 院中可真熱鬧,春花似錦、人聲如沸锅知。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,705評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽售睹。三九已至桩警,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間昌妹,已是汗流浹背捶枢。 一陣腳步聲響...
    開封第一講書人閱讀 32,848評論 1 269
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留飞崖,地道東北人烂叔。 一個月前我還...
    沈念sama閱讀 47,831評論 2 370
  • 正文 我出身青樓,卻偏偏與公主長得像固歪,于是被迫代替她去往敵國和親蒜鸡。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 44,678評論 2 354

推薦閱讀更多精彩內(nèi)容