我正在尝试向用户提供一个以 XML 格式组成的 Excel 文档。内容是这样开始的:
<?xml version="1.0"?>
<?mso-application progid="Excel.Sheet"?>
<Workbook xmlns="urn:schemas-microsoft-com:office:spreadsheet"
xmlns:o="urn:schemas-microsoft-com:office:office"
xmlns:x="urn:schemas-microsoft-com:office:excel"
xmlns:ss="urn:schemas-microsoft-com:office:spreadsheet"
xmlns:html="http://www.w3.org/TR/REC-html40">
<DocumentProperties xmlns="urn:schemas-microsoft-com:office:office">
etc...
我将其作为 .xls
文件提供,MIME 类型仅为 application/excel
和 Content-Disposition:attachment
。在 IE < 10 和 Office < 2010 中,它可以直接在 MS Excel 中打开,没有问题。
现在,对于 IE10 和 Office 2010,行为完全不同,我无法让它工作。 Excel 提示格式与文件扩展名 ( /image/GsDy8.gif ) 不同。无论我使用哪种可能的 Excel MIME 类型,都会发生这种情况。
如果我将扩展名更改为 .xml
,IE 会不断尝试在新选项卡中打开它,结果只会出现一个空白页面。同样,无论我尝试什么 MIME 类型,也无论“附件”设置如何(应该在 IE 之外打开它),都会发生这种情况。
考虑到它以前工作得很好,我在这里做错了什么?
最佳答案
我一直在与同样的问题作斗争。
我通过将 Content-Disposition
设置为 attachment
(就像你一样)和 ContentType
设置为 application/vnd.ms- 来解决这个问题excel
。
我用 Chrome、IE 和 Firefox 进行了测试。仅在 Firefox 中,如果我选择“打开方式”,浏览器会添加 .xls 扩展名。否则文件已下载。
我希望这对您有帮助。
关于excel - 如何将XML格式的Excel电子表格传递到IE10 + Office 2010?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19920167/