application/vnd.ms-excel
(官方)application/msexcel
application/x-msexcel
application/x-ms-excel
application/x-excel
application/x-dos_ms_excel
application/xls
application/x-xls
application/vnd.openxmlformats-officedocument.spreadsheetml.sheet
(xlsx)是否有一种适用于所有版本的类型?如果不是,我们是否需要分别为每种mime类型设置
response.setContentType()
?此外,我们在应用程序中使用文件流来显示文档(不仅仅是excel-任何类型的文档)。这样做时,如果用户选择保存文件,那么如何保留文件名-当前,呈现文件的servlet的名称显示为默认名称。
#1 楼
我相信Excel文件的标准MIME类型是application/vnd.ms-excel
。 关于文档的名称,您应该在响应中设置以下标题:
header('Content-Disposition: attachment; filename="name_of_excel_file.xls"');
评论
application / msexcel和application / vnd.ms-excel有什么区别?
– Thabiso Mofokeng
2012年11月28日13:23
如果要在浏览器中显示文档(如果支持),则Content-Disposition必须为“内联”。见stackoverflow.com/questions/1395151/…
– flash
13年10月1日在23:15
您应该避免在HTTP中使用Content-Disposition,因为它具有安全性考虑。内容处置仅适用于电子邮件。有关更多信息,请参见stackoverflow.com/questions/1012437。
–德米特里·拉泽卡(Dzmitry Lazerka)
2014年4月25日在21:32
请注意,对于OpenXML Excel XLSX文件格式,定义了其他Mime类型,请参见提供的链接中的完整列表。
–奥斯卡·伯格伦(Oskar Berggren)
2015年5月7日22:44
@DzmitryLazerka是内容处置的“安全”替代方法是什么?在您的链接之后,然后是该答案中的链接,然后是该文档中的链接,将我们带到此处:tools.ietf.org/html/rfc6266#section-4.3。据我所知,安全问题仅涉及用户提供的文件名-如果它们包含非拉丁字符或在某些OS上无效的字符。所有主要的浏览器都有针对这些问题的防护措施。 Windows和Mac还在文件上设置一个标志,指示该文件来自互联网,当您尝试打开该文件时会弹出警告。
–基普
2015年10月13日下午13:56
#2 楼
我看到这里唤醒了一个旧线程,但是我感到有增加“ .xlsx”新格式的冲动。 .xlsx是application/vnd.openxmlformats-officedocument.spreadsheetml.sheet
。检查MIME类型时将其包括可能是一个好主意!评论
这就是我一直在寻找的感谢,需要支持最新的格式以及以前的格式。
–李
18 Mar 15 '18 at 12:26
#3 楼
如果要以xlsx格式提供excel文件,则应始终在MIME类型下面使用application/vnd.openxmlformats-officedocument.spreadsheetml.sheet
#4 楼
对于.xls,请使用以下内容类型application/vnd.ms-excel
对于Excel 2007及更高版本,.xlsx文件格式
application/vnd.openxmlformats-officedocument.spreadsheetml.sheet
#5 楼
我从.NET代码中设置MIME类型,如下所示-File(generatedFileName, "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet")
我的应用程序使用OpenXML SDK生成excel。此MIME类型有效-
vnd.openxmlformats-officedocument.spreadsheetml.sheet
#6 楼
我正在使用EPPlus生成.xlsx(基于OpenXML格式)excel文件。为了将这个excel文件作为附件发送到电子邮件中,我使用以下MIME类型,它可以与EPPlus生成的文件一起正常工作,并且可以在ms-outlook邮件客户端预览中正确打开。#7 楼
对于使用问题中列出的所有可能的MIME类型后仍然still之以鼻的人:我发现iMacs也会为XLS Excel抛出MIME类型“ text / xls”文件,希望对您有所帮助。
评论
更一般而言,找出MS自己认为正确类型的最佳方法是找到一个装有最新版本的框,然后在注册表中查看HKCR / .xls的“内容类型”值。“ application / vnd.ms-office”是XLS文件的另一种mime类型。
application / vnd-xls也适用于.xls文件。
请参阅此帖子以获取MIME类型和相关excel文件扩展名的完整列表。
标准excel MIME类型是:-application / vnd.ms-excel