获取文件的 MimeType(内容类型)
Posted
技术标签:
【中文标题】获取文件的 MimeType(内容类型)【英文标题】:Get the MimeType(Content Type) of a file 【发布时间】:2012-06-20 03:52:30 【问题描述】:如何通过文件扩展名获取特定文件的 Mime 类型或内容类型? 本程序采用MVC3 Razor Syntax开发,代码如下:
if (System.IO.File.Exists(file))
return File(file, "application/pdf", id);
else
return RedirectToAction("Index");
我想将 application/pdf 更改为动态值,以便它通过发送到控制器的 id 或文件名提供 MIME 类型。
【问题讨论】:
[c# - 使用 .NET,如何根据文件签名而不是扩展名找到文件的 MIME 类型 - 堆栈内存溢出][1] FindMimeFromData API 怎么样? [1]:***.com/questions/58510/… 文件扩展名不映射到 MIME 类型 1:1。 这里有一个类似的问题:***.com/questions/1612767/… 在.Net 4.5中你可以使用System.Web.MimeMapping.GetMimeMapping()
【参考方案1】:
您可以在HKCR\<file extension>\Content Type
查找注册表值。此值并非适用于所有文件类型,但可能适用于您感兴趣的所有文件类型。
【讨论】:
以上是关于获取文件的 MimeType(内容类型)的主要内容,如果未能解决你的问题,请参考以下文章
我的Android进阶之旅关于Android平台获取文件的mime类型:为啥不传小写后缀名就获取不到mimeType?为啥android 4.4系统获取不到webp格式的mimeType呢?(代码片段