【发布时间】:2017-02-03 20:45:51
【问题描述】:
我想计算目录(文件夹)的大小,我必须列出卷(驱动器)中的所有文件和文件夹(子文件夹)及其相应的大小。我正在使用下面的代码来计算大小。这个问题代码是性能问题。我正在使用NSBrowser 来显示。
NSArray *filesArray = [[NSFileManager defaultManager] subpathsOfDirectoryAtPath:folderPath error:nil];
NSEnumerator *filesEnumerator = [filesArray objectEnumerator];
NSString *fileName;
unsigned long long int fileSize = 0;
while (fileName = [filesEnumerator nextObject])
{
NSDictionary *fileDictionary = [[NSFileManager defaultManager] attributesOfItemAtPath:folderPath error:nil];
fileSize += [fileDictionary fileSize];
}
return fileSize;
问题:
有没有可用的内置函数?
如果不是,计算大小的最佳方法是什么?
用缓存来存储已经计算好的文件大小好不好?
谢谢...
【问题讨论】: