gpt4 book ai didi

objective-c - 获取文件夹大小的简单方法(ObjC/Cocoa)?

转载 作者:太空狗 更新时间:2023-10-30 03:35:26 26 4
gpt4 key购买 nike

现在我正在使用这段代码来获取文件夹的大小:

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.8MB。

获取文件夹大小的最佳方法是什么?

谢谢

最佳答案

我今天需要自己做这个,我发现 this post on the Cocoa-dev list 中的代码速度超快,与 Finder 所说的字节相匹配。 (不要忘记在 kFSCatInfoRsrcSizes 标志中进行 OR,这样您也可以获得资源 fork 大小!)

如果您需要有关如何使用它的更多说明,请发表评论,我会编辑这篇文章。 =)

关于objective-c - 获取文件夹大小的简单方法(ObjC/Cocoa)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1275627/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com