Ham*_*asN 11 stream ios mime-types
我们知道我们可以从文件的扩展名中获取文件的MIME TYPE,但它并不完全正确.例如,我们更改了文件的扩展名,我们将得到错误的mime类型.而且我们也知道通过C#中的文件签名获取mime类型的方式,(使用urlmon.dll 使用.NET,如何根据文件签名而不是扩展名找到文件的mime类型,我的问题是我们怎样才能在IOS中获得精确的mime类型,无论文件的扩展名被某人更改,我们都可以获得正确的mime类型.
谢谢你的关注〜!
Nik*_*uhe 27
你能告诉我当我得到一个文件的路径时,我是如何得到正确的mime类型的.
iOS使用统一类型标识符(UTI)的概念来处理文档类型.
NSString *path; // contains the file path
// Get the UTI from the file's extension:
CFStringRef pathExtension = (__bridge_retained CFStringRef)[path pathExtension];
CFStringRef type = UTTypeCreatePreferredIdentifierForTag(kUTTagClassFilenameExtension, pathExtension, NULL);
CFRelease(pathExtension);
// The UTI can be converted to a mime type:
NSString *mimeType = (__bridge_transfer NSString *)UTTypeCopyPreferredTagWithClass(type, kUTTagClassMIMEType);
if (type != NULL)
CFRelease(type);
Run Code Online (Sandbox Code Playgroud)
您应该考虑直接使用UTI而不是将它们转换为功能较弱的mime类型.
| 归档时间: |
|
| 查看次数: |
10356 次 |
| 最近记录: |