iOS开发-获取文件的MIMEType(文件类型)

官方解释:MIME (Multipurpose Internet Mail Extensions) 是描述消息内容类型的因特网标准。
使用场景:无论是我们使用NSURLConnection还是使用第三方框架AFN,在我们上传文件的时候,我们都需要指定上传文件的类型,例如:image/png、text/html等。接下来,我就详细说明一下文件的MIMEType获取方法。

方式一:百度MIMEType

[MIMEType手册](http://www.w3school.com.cn/media/media_mimeref.asp)

方式二:从请求响应中获取

iOS开发-获取文件的MIMEType(文件类型)_第1张图片
response_mimeyype.png

在代理方法和block回调中都会得到一个NSURLResponse对象。

方式三:调用C语言的API

//path为要获取MIMEType的文件路径
- (NSString *)mimeTypeForFileAtPath:(NSString *)path
{
    if (![[[NSFileManager alloc] init] fileExistsAtPath:path]) {
        return nil;
    }
    
    CFStringRef UTI = UTTypeCreatePreferredIdentifierForTag(kUTTagClassFilenameExtension, (__bridge CFStringRef)[path pathExtension], NULL);
    CFStringRef MIMEType = UTTypeCopyPreferredTagWithClass (UTI, kUTTagClassMIMEType);
    CFRelease(UTI);
    if (!MIMEType) {
        return @"application/octet-stream";
    }
    return (__bridge NSString *)(MIMEType);
}

方式四:直接填写 application/octet-stream ,代表任意的二进制数据

你可能感兴趣的:(iOS开发-获取文件的MIMEType(文件类型))