Objective c 在Mac OS中获取文件类型

Objective c 在Mac OS中获取文件类型,objective-c,cocoa,file,Objective C,Cocoa,File,我正在尝试获取给定文件的文件类型(列表视图中Finder中显示的文件)。有没有一个简单的方法来实现这一点?看看的方法和步骤。下面是一个命令行工具的快速示例,该工具将在运行时打印指定为参数的文件的信息: #import <Cocoa/Cocoa.h> int main (int argc, const char * argv[]) { NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init]; if (

我正在尝试获取给定文件的文件类型(列表视图中Finder中显示的文件)。有没有一个简单的方法来实现这一点?

看看的方法和步骤。下面是一个命令行工具的快速示例,该工具将在运行时打印指定为参数的文件的信息:

#import <Cocoa/Cocoa.h>

int main (int argc, const char * argv[])
{

    NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init];

    if (argc > 1) {
        for(int i = 1; i < argc; ++i) {
            NSString *theFile = [NSString stringWithFormat:@"%s", argv[i]];
            NSWorkspace *ws = [NSWorkspace sharedWorkspace];
            NSString *fileType = [ws typeOfFile:theFile error:nil];
            NSString *fileDesc = [ws localizedDescriptionForType:fileType];
            NSLog(@"File:%@ Type:%@ Description:%@", theFile, fileType, fileDesc);
        }
    }

    [pool drain];
    return 0;
}
#导入
int main(int argc,const char*argv[]
{
NSAutoreleasePool*池=[[NSAutoreleasePool alloc]init];
如果(argc>1){
对于(int i=1;i

注意,XCODEL的默认“命令行工具”项目只链接到基础——您需要将其包含的内容更改为COCOA,并添加COCO.Frror,如果您想构建上面的示例。不过,您可能不需要构建它-它非常简单,您可能不需要这样做就可以获得所需的信息。

答案和解释都很好!谢谢。