ind*_*gie 7 directory size cocoa objective-c nsfilemanager
现在我正在使用此代码来获取文件夹的大小:
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];
Run Code Online (Sandbox Code Playgroud)
问题是它非常真实.它要么增加几兆字节,要么从实际大小中扣除几兆字节.例如,我得到了一个.app包的文件大小,这个方法报告了16.2MB,而实际的是15.8.
获取文件夹大小的最佳方法是什么?
谢谢
我今天需要自己做这个,并且我发现Cocoa-dev列表中这篇文章中的代码非常快,并且匹配Finder对字节所说的内容.(不要忘记在kFSCatInfoRsrcSizes标志中使用OR,这样你也可以获得资源分叉大小!)
如果您需要有关如何使用它的更多解释,请发表评论,我将编辑此帖.=)
| 归档时间: |
|
| 查看次数: |
10227 次 |
| 最近记录: |