获取一个文件夹下所有文件的大小
NSFileManager *manager=[NSFileManager defaultManager];
NSOperationQueue *queue=[[NSOperationQueue alloc]init];
__block NSInteger totalSize=0;
//在这里边获取我们缓存的大小
[queue addOperationWithBlock:^{
NSString *cachePath=NSSearchPathForDirectoriesInDomains(NSCachesDirectory, NSUserDomainMask, YES).firstObject;
NSString *fileDir=[cachePath stringByAppendingString:@"/default/com.hackemist.SDWebImageCache.default"];
//会遍历该文件路径下的所有内容,包括子文件夹下的内容
NSDirectoryEnumerator *fileEnumerator=[manager enumeratorAtPath:fileDir];
//遍历所有的文件名
for (NSString *fileName in fileEnumerator) {
NSString *filePath=[fileDir stringByAppendingPathComponent:fileName];
//获取该文件的所有属性
NSDictionary *attrs=[manager attributesOfItemAtPath:filePath error:nil];
HQLog(@"%@",filePath);
//如果该文件名是目录
if ([attrs[@"NSFileType"] isEqualToString:NSFileTypeDirectory]) {
continue;
}
totalSize+=[attrs[NSFileSize] integerValue];
}
[[NSOperationQueue mainQueue] addOperationWithBlock:^{
self.cellText=[NSString stringWithFormat:@"缓存大小(%.2f M)",totalSize/1000.0/1000];
[self.tableView reloadData];
}];
}];
声明:该文观点仅代表作者本人,牛骨文系教育信息发布平台,牛骨文仅提供信息存储空间服务。
- 上一篇: vue v-for 数据处理
- 下一篇: html5的页面缓存和本地数据存储支持
