一、網絡請求
發送網絡請求,在響應頭中通過response.MIMEType
拿到文件的MIMEType
類型
eg:NSURLConnection
- (NSString *)MIMEType:(NSURL *)url
{
// 1.創建一個請求
NSURLRequest *request = [NSURLRequest requestWithURL:url];
NSURLResponse *response = nil;
// 2.發送請求(返回響應)
[NSURLConnection sendSynchronousRequest:request returningResponse:&response error:nil];
// 3.獲得MIMEType
return response.MIMEType;
}
二、通過UTTypeCopyPreferredTagWithClass方法
注意:需要導入 <MobileCoreServices/MobileCoreServices.h>
- (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) {
//application/octet-stream 任意的二進制數據類型
return @"application/octet-stream";
}
return (__bridge NSString *)(MIMEType);
}