我应该为CSV使用什么MIME类型?

Ste*_*unn 430 csv http-headers mime-types

我见过application/csv二手也是text/csv.

有什么不同?有区别吗?只要请求匹配可用的内容,这是否重要?它们可以互换吗?

Chr*_*ley 588

RFC 7111

有一个RFC覆盖它并说要使用text/csv.

此RFC更新RFC 4180.


高强

最近我发现了Excel application/vnd.ms-excel的显式mimetype.它于1996年在IANA注册.请注意提出的问题是由发件人摆弄并且违反了您的计算机.

媒体类型:application/vnd.ms-excel

名称Microsoft Excel(tm)

必需参数:无

可选参数:名称

编码注意事项:base64首选

安全注意事项:与大多数应用程序类型一样,此数据旨在由了解接收方系统上的数据的程序进行解释.收件人在接收此类数据时需要了解他们处于发件人的"怜悯",因为数据将在他们的系统上执行,并且可能违反其机器的安全性.

OID {org-id ms-files(4)ms-excel(3)}

对象类型电子表格

注释此媒体类型/ OID用于一般性地标识Microsoft Excel(即,独立于版本,子类型或平台格式).

我不知道允许供应商扩展.查看此答案以了解更多信息 - 感谢starbeamrainbowlabs作为参考.

  • CSV是一种文本文件格式,为什么Excel与它有任何关系,或者我错过了什么? (35认同)
  • 程序打开文件类型与该文件类型的关联MIME类型无关. (23认同)
  • Notepad ++不会"分配"任何mime类型,您使用的服务是分配它. (18认同)
  • 哇,很多人因提到'vnd.ms-excel`而受伤.+1,我认为这是一个有趣的旁注;) (11认同)
  • @Pablo我在Windows机器上安装了Excel,在Notepad ++中创建CSV将分配MIME类型application/vnd.ms-excel.请亲自尝试并在http://mime.ritey.com/上查看您的MIME类型 (5认同)
  • Windows在`HKLM\Software\Classes`中管理其注册表中的mimetypes列表 - 当Excel配置为处理它们的默认应用程序时,为.csv条目定义的`Content Type`是`application/vnd.ms-excel`所以这是传入的值. (4认同)
  • 这不是关于受到伤害,而是大约80%的答案实际上是偏离主题的. (4认同)
  • 如果您在Mac OS上安装了excel,则除非您更改,否则.csv文件类型将绑定为excel. (2认同)
  • @pjd - Pablo 是对的,记事本没有分配 MIME 类型 - 实际上服务也没有分配它,尽管它是由 RFC 中提到的“网络工作组”完成的 (2认同)
  • 对于那些对`vnd`在这个答案中代表什么感到好奇的人,请查看[this answer](/sf/ask/374576541/意义-of-vnd-in-mime -types / 5351162) (2认同)
  • 作为由于随机 UI 验证错误而从 Google 搜索中找到此答案的人,此答案非常相关。 (2认同)

Smo*_*oot 90

您应该根据RFC 4180使用"text/csv" .


小智 44

奇怪的行为MS Excel:如果我导出为"基于文本,逗号分隔格式(csv)"这是我在网络服务器上传后获得的mime类型:

[name] => data.csv
[type] => application/vnd.ms-excel
Run Code Online (Sandbox Code Playgroud)

因此,无论现有标准如何,微软似乎都在重新做自己的事情:https://en.wikipedia.org/wiki/Comma-separated_values

  • 这是由于将文件扩展名映射到mime类型的Web服务器的配置.微软IIS应该使用服务器注册表,如果它安装在Web服务器上,则由Excel安装填充. (5认同)
  • 嗯......考虑到"现有标准"决定忽略当他们决定在2005年10月编写的RFC 4180中定义CSV时已经使用的内容,将微软归咎于未来的愚蠢将是愚蠢的.看看标准组织决定了什么,然后在1985年第一次写excel时再使用它.你在安装什么版本的excel? (5认同)
  • 你真的不相信网络客户端发送的mime类型,它只是一般的指南. (4认同)

mgu*_*utt 29

我的用户可以上传CSV文件text/csv,application/csv但现在还没有出现.这些是通过finfo()识别的:

text/plain
text/x-csv
Run Code Online (Sandbox Code Playgroud)

这些是通过浏览器传输的:

text/plain
application/vnd.ms-excel
text/x-csv
Run Code Online (Sandbox Code Playgroud)

以下类型没有出现,但可以:

application/csv
application/x-csv
text/csv
text/comma-separated-values
text/x-comma-separated-values
text/tab-separated-values
Run Code Online (Sandbox Code Playgroud)

  • 浏览器在上传过程中猜测要发送的内容作为文件的 MIME 类型。您可以拒绝那些与您无关的文件,但仔细检查文件的实际内容是确定上传内容的唯一方法。 (3认同)

Luc*_*oke 18

对于任何在 Google API mimeType*.csv文件方面苦苦挣扎的人,我找到了 google api 文档文件的 MIME 类型列表

谷歌文档格式 转换格式 对应的MIME类型
文件 超文本标记语言 text/html
HTML(压缩) application/zip
纯文本 text/plain
富文本 application/rtf
打开 Office 文档 application/vnd.oasis.opendocument.text
PDF application/pdf
MS Word 文档 application/vnd.openxmlformats-officedocument.wordprocessingml.document
EPUB application/epub+zip
电子表格 微软Excel application/vnd.openxmlformats-officedocument.spreadsheetml.sheet
打开办公表 application/x-vnd.oasis.opendocument.spreadsheet
PDF application/pdf
CSV(仅限第一张) text/csv
TSV(仅限第一张) text/tab-separated-values
HTML(压缩) application/zip
图纸 JPEG image/jpeg
巴布亚新几内亚 image/png
静止无功发生器 image/svg+xml
PDF application/pdf
演讲 微软PowerPoint application/vnd.openxmlformats-officedocument.presentationml.presentation
开放式办公室演示 application/vnd.oasis.opendocument.presentation
PDF application/pdf
纯文本 text/plain
应用程序脚本 JSON application/vnd.google-apps.script+json

来源:https: //developers.google.com/drive/v3/web/manage-downloads#downloading_google_documents 下的表格:“Google Doc 格式和支持的导出 MIME 类型相互映射,如下所示”

还有另一个清单

MIME 类型 描述
application/vnd.google-apps.audio
application/vnd.google-apps.document 谷歌文档
application/vnd.google-apps.drawing 谷歌绘图
application/vnd.google-apps.file 谷歌云端硬盘文件
application/vnd.google-apps.folder 谷歌云端硬盘文件夹
application/vnd.google-apps.form 谷歌表单
application/vnd.google-apps.fusiontable 谷歌融合表
application/vnd.google-apps.map 谷歌我的地图
application/vnd.google-apps.photo
application/vnd.google-apps.presentation 谷歌幻灯片
application/vnd.google-apps.script 谷歌应用脚​​本
application/vnd.google-apps.site 谷歌网站
application/vnd.google-apps.spreadsheet 谷歌表格
application/vnd.google-apps.unknown
application/vnd.google-apps.video
application/vnd.google-apps.drive-sdk 第 3 方快捷方式

来源: https: //developers.google.com/drive/v3/web/mime-types

但第一个对我的用例更有帮助。