强制播放器在JAVA中安装docx文件会转化损坏的文件转载
原创使用JAVA我试图迫使浏览器下载该文件。
这是我目前使用的代码:
response.reset();
response.resetBuffer();
response.setContentType(mimeType);
response.setHeader("Content-Disposition", "attachment; filename="" + fileName + """);
InputStream in = new FileInputStream(file);
OutputStream out = response.getOutputStream();
IOUtils.copy(in, out);
out.flush();
out.close();
in.close();
response.flushBuffer();
它 几乎可以 它可以工作,但当被迫下载时。 docx
文档(MS Office 2007+),则下载的文件已损坏(至少,这是。MS
Office告诉我)。如果您尝试在存储它们的服务器上直接打开它,则不会出现错误,这意味着问题确实是在下载时(而不是在上传时)受到干扰。
根据 IANA的 声明,这类文件的MIME类型应为 application/vnd.openxmlformats- officedocument.wordprocessingml.document
(1) ,但具体说明MIME类型不能解决问题。
Web上有很多 曲目
但它们对我都没有用处。似乎有一种 解决方案 中 ASP.NET
,但我没有找到同等的。 JAVA
。
我也试着用MIME类型 application/vnd.ms-word
*(2),
_就像我在 那里 看到了吧,但是下载的文件还是损坏了。一个人 在这里 建议使用MIME类型 application/msword
(3) ,并在 本论坛 上提出的MIME类型 (4)
。 MARKDOWN_HASH4d338170ab9ba1faabba4003a24e4060MARKDOWNHASH
*
那么这四位呢,MIME类型,我尝试从下载该文件的名称。 myfile.docx
更改为 myfile.doc
(不再是 x
),但问题仍然存在。
那么,如何强制下载。 未损坏的 docx
文件?我的代码正确吗?
阅读 74
版权声明
所有资源都来源于爬虫采集,如有侵权请联系我们,我们将立即删除