对于我的应用程序,我需要使用 Carbon 文件管理器 API 来获取文件夹的大小(NSEnumerator 很慢,并且使用带有 shell 命令的 NSTask 更糟糕)。我已经导入了 Carbon 框架,我正在使用这种方法来获取文件夹的大小:
http://www.cocoabuilder.com/archive/message/cocoa/2005/5/20/136503
它使用 FSRef 作为参数,而我的路径字符串当前是 NSString。我尝试使用它来将 NSString 转换为 FSRef:
FSRef f;
OSStatus os_status = FSPathMakeRef((const UInt8 *)[filePath fileSystemRepresentation], &f, NULL);
if (os_status != noErr) {
NSLog(@"fsref creation failed");
}
然后我调用了文件夹大小方法:
[self fastFolderSizeAtFSRef:f];
但是,当我尝试构建时,我收到有关上述行的此错误:
错误:“fastFolderSizeAtFSRef:”的参数之一的类型不兼容
任何帮助,将不胜感激。谢谢