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

歡迎訪問 生活随笔!

生活随笔

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

编程问答

ios html清除缓存,iOS开发之1行代码实现缓存计算及清除缓存

發布時間:2025/3/12 编程问答 19 豆豆
生活随笔 收集整理的這篇文章主要介紹了 ios html清除缓存,iOS开发之1行代码实现缓存计算及清除缓存 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

話不多說,直接擼代碼

//

// gzhCache.h

// cache

//

// Created by 郭志賀 on 2020/5/27.

// Copyright ? 2020 郭志賀. All rights reserved.

//

#import

NS_ASSUME_NONNULL_BEGIN

@interface gzhCache : NSObject

/// 計算緩存大小

+(float)filePath;

/// 清理緩存

+(void)clearCache;

@end

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

}

//計算單個文件的大小

+ (long long) fileSizeAtPath:( NSString *) filePath{

NSFileManager * manager = [ NSFileManager defaultManager ];

if ([manager fileExistsAtPath :filePath]){

return [[manager attributesOfItemAtPath :filePath error : nil ] fileSize ];

}

return 0 ;

}

//遍歷文件夾獲得文件夾大小,返回多少M

+ (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]];

清理的方法調用

[gzhCache clearCache];

以上內容僅代表本菜鳥看法,復制可直接使用。如有不妥之處敬請告知。

好了,到此這篇iOS開發之1行代碼實現緩存計算及清除緩存的文章就介紹到這了,更多相關iOS緩存計算及清除緩存內容請搜索腳本之家以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持腳本之家!

總結

以上是生活随笔為你收集整理的ios html清除缓存,iOS开发之1行代码实现缓存计算及清除缓存的全部內容,希望文章能夠幫你解決所遇到的問題。

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