【发布时间】:2010-11-19 12:35:06
【问题描述】:
现在我正在使用此代码来获取文件夹的大小:
NSArray *contents;
NSEnumerator *enumerator;
NSString *path;
contents = [[NSFileManager defaultManager] subpathsAtPath:folderPath];
enumerator = [contents objectEnumerator];
while (path = [enumerator nextObject]) {
NSDictionary *fattrib = [[NSFileManager defaultManager] fileAttributesAtPath:[folderPath stringByAppendingPathComponent:path] traverseLink:YES];
fileSize +=[fattrib fileSize];
}
[contents release];
[path release];
问题在于它非常不准确。它要么增加几兆字节,要么从实际大小中减去几兆字节。例如,我得到了一个 .app 包的文件大小,这个方法报告了 16.2MB,而实际是 15.8。
获取文件夹大小的最佳方法是什么?
谢谢
【问题讨论】:
-
有人在沙盒下使用这个吗? :-)
标签: objective-c cocoa size directory nsfilemanager