docx格式附件下载后成为zip文件
来源:互联网 发布:网络皮条客会判多久 编辑:程序博客网 时间:2024/05/07 05:00
office 2007各种格式附件下载后变成zip文件问题解决方法
从IIS或者Tomcat之类的Web服务器通过二进制流下载文件时(比如通过设置Header为Content-disposition:inline),如果被下载的文件是Office2007的dotx,docx,pot等后缀的时候,下载对话框中的图标会变成ZIP的,相应的文件名也会成为zip为扩展后缀的文件。其实出现这样的情况,是由于IE中对下载文件类型的判断,假如找不到相应后缀的MIME的话,会自动根据数据流来判断文件的类型,而微软对Office2007的格式做了和以前完全不同的处理。
以前的Office文档是100%的二进制格式。第三方的工具操作起来非常不方便,而 Office2007从整体上都是基于XML格式的,这里并不是说Office2007文档可以保存成XML格式。而是Office2007默认的文档格式就是XML的(Word的docx、Excel的xlsx等)。也许有人会感到奇怪,用文本编辑器打开docx后,显示的仍然是二进制格式,并不是什么 XML。其实docx并不是普通的XML格式,当然,也不只是一个XML文件,docx本质上是一个zip文件,里面有一系列的xml、目录和其他的文件。如果我们将docx改成zip。就可以用winzip等软件将其解开。
正是由于这样的原因,当MIME中不存在相对应的Office2007类型的情况下,被自动识别为ZIP文件了。
解决的方法:
tomcat->conf->web.xml中增加如下代码就可以了
<mime-mapping>
<extension>docx</extension>
<mime-type>application/vnd.openxmlformats-officedocument.wordprocessingml.document</mime-type>
</mime-mapping>
<mime-mapping>
<extension>xlsx</extension>
<mime-type>application/vnd.openxmlformats-officedocument.spreadsheetml.sheet</mime-type>
</mime-mapping>
<mime-mapping>
<extension>pptx</extension>
<mime-type>application/vnd.openxmlformats-officedocument.presentationml.presentation</mime-type>
</mime-mapping>
- docx格式附件下载后成为zip文件
- *.docx,*.xlsx,*.pptx文件下载后变成.zip文件,*.csv文件下载后变为.html文件
- 转 IE 下载docx xlsx 文件另存为zip文件
- apache下载docx,pptx文件被浏览器当作zip文件
- IE下载xlsx、docx、pptx文件时自动变成zip文件问题
- 下载docx时当做zip文档解决方案
- IE下载docx(xlsx,pptx)扩展名的文件时,会自动将扩展名变为zip
- 解决IE下载DOCX文件时自动变为ZIP的方法
- java做下载的时候docx文件的时候变成.zip后缀的问题
- IE下载docx(xlsx,pptx)文件时,会自动将扩展名变为zip
- zip或.rar下载后怎么转成apk格式
- 上传附件后无法下载,显示找不到文件
- mac打开docx&解压zip后文件名乱码
- docx,xlsx,pptx下载变成zip的解决办法
- IE下载docx xlsx变成zip的问题
- java将多个文件一起打成zip包后下载实例
- java 将多个文件打包成一个zip后进行下载
- java将多个文件一起打成zip包后下载实例
- [Matlab]基础教程学习笔记(二):程序控制结构
- Android BroadcastReceiver两种注册方式区别
- C#笔记(02)
- 疯狂Android讲义(第2版)
- 记忆的轨迹
- docx格式附件下载后成为zip文件
- 罗永浩的一些东西
- <select> 标签使用记录心得
- 把UIImage 裁成规定的尺寸
- linux 性能监控命令——w,who,whoami,whois ,who am i
- ios开发点滴-一篇关于两个程序之间跳转方法的文章
- android sdk版本分布
- Listview的滚动方式
- 06黑马程序员_while循环,调试