获取一个文件夹下所有文件的大小
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的页面缓存和本地数据存储支持