1.单个文件的大小
- (longlong)fileSizeAtPath:(NSString*) filePath
{
NSFileManager* manager = [NSFileManager defaultManager];
if ([manager fileExistsAtPath:filePath]){
return [[manager attributesOfItemAtPath:filePath error:nil] fileSize];
}
return0;
}
2.判断文件夹总大小
遍历文件夹获得文件夹大小,返回多少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 = [folderPathstringByAppendingPathComponent:fileName];
folderSize += [self fileSizeAtPath:fileAbsolutePath];
}
return folderSize/(1024.0*1024.0);
}
3.清理缓存
- (void)clearCacheEvent:(NSString*)filePath
{
NSString *cachPath = filePath;
NSArray *files = [[NSFileManagerdefaultManager] subpathsAtPath:cachPath];
NSLog(@"files :%ld",[filescount]);
for (NSString *pin files) {
NSError *error;
NSString *path = [cachPath stringByAppendingPathComponent:p];
if ([[NSFileManagerdefaultManager] fileExistsAtPath:path]) {
[[NSFileManagerdefaultManager] removeItemAtPath:patherror:&error];
}
}
[_tableView reloadData];
}