使用Finder时,我需要获得与“获取信息”相同的信息;更具体地说,我需要“更多信息”部分中显示的相同信息,如持续时间,比特率,维度,编解码器,音频通道等。
要获得大小,类型等基本信息,我有:
// Getting the file's attributes
NSError *error;
NSFileManager *fm = [NSFileManager defaultManager];
NSDictionary *fileInfo = [fm attributesOfItemAtPath:fileName error:&error];
是否有任何本地Cocoa库可以获取此信息?
答案 0 :(得分:4)
我需要获得与使用Finder时获取“获取信息”相同的信息,更具体地说,我需要“更多信息”部分中显示的相同信息,如持续时间,比特率,维度,编解码器,音频频道等。
与Finder一样:Spotlight。 (不要让路径中的“Carbon”这个词吓跑你:它是Core Services的一部分,所以它可以64位获得。)只需为你感兴趣的文件实例化一个MDItem。
另一种方法是使用Foundation自己的框架包装器(包含在该页面上),但是你需要做一个NSMetadataQuery来搜索kMDItemPath
是你文件路径的项目。很多不必要的麻烦 - 直接使用MDItem会让你更快。
一个很好的奖励是,这不仅适用于视频和音频文件。图像文件还包含Finder和您的应用可以显示的元数据。
答案 1 :(得分:0)
创建一个QTMovie
实例,然后使用-movieAttributes
消息查询其属性。