我想为文件找到Finder“Kind”。例如,对于文件“foo.css”,我想要字符串“CSS样式表”。如何获取文件的Finder“Kind”?
到目前为止,我在做这样的事情:
NSURL *fileURL = [[NSURL alloc] initFileURLWithPath: filename];
NSString *utiType;
NSError *error;
BOOL success = [fileURL getResourceValue: &utiType
forKey: NSURLTypeIdentifierKey
error: &error];
if (!success) {
NSLog(@"failure during reading utiType: error = %@", error);
return;
}
NSString *utiDescription = (__bridge NSString *) UTTypeCopyDescription((__bridge CFStringRef) utiType);
if (utiDescription) {
// use utiDescription here...
}
这给我的UTI,在某些情况下效果很好(人类可读的名称“foo.html”给出“HTML文本“),但是对于CSS文件,它返回nil,所以它显然不是Finder在”Kind“列中显示的内容。
你是如何得到一种文件的?