通常用于删除缓存的时,计算缓存大小
//单个文件的大小
-
(
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
);
}
原文地址:http://blog.csdn.net/yangchen9931/article/details/44957787