工程部署在不同的环境下,以及用不同的浏览器下载附件,编码方式是不同的 下面针对各种情况列出解决的办法:
1、工程在windows环境下时,
ie同firefox:
response.setHeader("Content-Disposition","attachment;" + "filename=" + new String(fileName.getBytes(),"ISO8859-1"));
2、工程在Linux环境下时,
String agent = request.getHeader("USER-AGENT");
if (null != agent && -1 != agent.indexOf("MSIE")){
response.setHeader("Content-Disposition","attachment;" + "filename=" + URLEncoder.encode( fileName , "UTF8"));
}
else if (null != agent && -1 != agent.indexOf("Mozilla")){
response.setHeader("Content-Disposition","attachment;" + "filename=" + new String(fileName .getBytes("UTF-8"),"ISO8859-1"));
}
else {
response.setHeader("Content-Disposition","attachment;filename=" + fileName );
}
分享到:
相关推荐
彻底解决Asp.net 文件下载时文件名的中文乱码和空格异常全球性技术难题 本文用 C# 代码解决了在目前四种流行浏览器中Asp.net 输出文件流时文件名的空格及中文字符乱码这两个问题。使用本文的代码,你将可以让 IE...
本文主要讨论了文件下载时response.setHeader()下载中文文件名乱码问题的解决办法。该问题是由于 HTTP 消息头中的 Content-Disposition 头字段不正确导致的。 首先,需要了解 HTTP 消息头的分类。HTTP 消息头可以...
ASP.NET 解决下载文件的时候文件名乱码问题,
Java实现文件下载并解决中文文件名乱码
jsp实现文件下载与中文文件名乱码问题解决
往往开发环境和生产环境在环境部署时会遇到很多奇怪的问题,此次word文档下载就被卡住了,通过一番努力终于找到了原因,分享给大家。上传文件txt格式,内有方法详细的代码注释及原因说明,jar包比较常见,大家自行...
jsch-0.1.53 不支持修改编码格式,sftp.setFilenameEncoding("GBK");这样修改是不起作用的,所以必须修改源码。此处是修改源码后重新导出的jar包。
感谢你的下载,文件说明如下: *jsch的源文件 *jsch的依赖包 *用jsch源文件及依赖包构建的项目,便于修改其源码* ...如果乱码问题依然没解决,这个类也许能帮你找到你需要更改的编码类型。然后修改那三处地方。
多文件上传例子,彻底解决中文乱码问题了。总结中文乱码问题如下: 1、所有页面都用UTF-8。 2、写过滤器,设置request.setCharacterEncoding("UTF-8")。 3、javascript脚本里用encodeURI(str)。 4、适当的时候,在...
我最近在开发时遇到了文件另存为时文件名出现乱码,在火狐上正常的文件名,在IE中又出现乱码问题,然后好不容易在IE下调试好了文件名乱码问题,在火狐下又出现乱码,最后终于感觉这样是能解决了。具体如下:
修改了jar源代码,解决multipart/form-data上传包含中文文件名乱码问题,覆盖apache-jmeter-4.0\lib\ext目录下ApacheJMeter_http.jar即可。
文件下载,二进制流转换成文件 解决中文名乱码的问题
解决js运行得出的结果乱码的问题。(只需要发布web项目前将js文件转化一下即可。)
NULL 博文链接:https://gaojunwei.iteye.com/blog/1958714
解决Jmeter5.3上传文件中文乱码问题和录制脚本中文乱码问题,替换原本的lib\ext目录下的ApacheJMeter_http.jar文件,上传文件时,需要勾选“对POST使用multipart / form-data” 和 “与浏览器兼容的头”选项,并在...
http file server 2.84修改模板解决中文乱码问题,中文界面,添加注释、上传文件等的中文乱码得到了解决,需要部署服务器存储的可以下一个