切换目标c中的字符串大小写

时间:2013-12-09 15:18:59

标签: objective-c switch-statement mime-types

我想问一下,在Objective-C中执行类似NSStrings的switch (…)语句的最有效方法是什么。

我想要做的是一个函数,我发送文件扩展名(doc,txt,...),我得到它的MIME类型。

我正在思考一些key->值的数组,但我不确定这是否是最好的方法。

你有什么建议我?

1 个答案:

答案 0 :(得分:1)

声明从文件扩展名到mime类型的静态字典映射,并简单地查询它:

NSDictionary *mimeTypes = nil;
static dispatch_once_t onceToken;
dispatch_once(&onceToken, ^{
    mimeType = @{
        @"txt" : @"text/plain",
        @"doc" : @"application/msword",
        ....
    };
});
NSString *mimeType = mimeTypes[@"txt"]; // result: @"text/plain"