在文件下载时通过在报文头中设置文件名来设置下载的文件名。例
response.setHeader("Content-Disposition", "attachment;fileName=" + fileName)
但假如文件名为中文的时候,会发现文件名乱码。处理方法是讲文件名根据不同的浏览器转码。
/** * 根据不同浏览器将文件名中的汉字转为UTF8编码的串,以便下载时能正确显示另存的文件名. * * @param s * 原文件名 * @return 重新编码后的文件名 */ public static String toUtf8String(HttpServletRequest request, String s) { String agent = request.getHeader("User-Agent"); try { boolean isFireFox = (agent != null && agent.toLowerCase().indexOf( "firefox") != -1); if (isFireFox) { s = new String(s.getBytes("UTF-8"), "ISO8859-1"); } else { s = toUtf8String(s); if ((agent != null && agent.indexOf("MSIE") != -1)) { // see http://support.microsoft.com/default.aspx?kbid=816868 if (s.length() > 150) { // 根据request的locale 得出可能的编码 s = new String(s.getBytes("UTF-8"), "ISO8859-1"); } } } } catch (UnsupportedEncodingException e) { e.printStackTrace(); } return s; }
相关推荐
我最近在开发时遇到了文件另存为时文件名出现乱码,在火狐上正常的文件名,在IE中又出现乱码问题,然后好不容易在IE下调试好了文件名乱码问题,在火狐下又出现乱码,最后终于感觉这样是能解决了。具体如下:
ASP.NET 解决下载文件的时候文件名乱码问题,
文件下载response.setHeader()下载中文文件名乱码问题解决办法.pdf
Linux下中文文件名乱码问题的详解 - CSDN博客原创2016年06月12日 09:59:40标签:压缩 / linux / 乱码Linux下中文文件名乱码
HttpClient4.2.5实现文件上传,无中文文件名乱码问题。亲测无问题。有问题可吐槽!
jsp实现文件下载与中文文件名乱码问题解决
彻底解决Asp.net 文件下载时文件名的中文乱码和空格异常全球性技术难题 本文用 C# 代码解决了在目前四种流行浏览器中Asp.net 输出文件流时文件名的空格及中文字符乱码这两个问题。使用本文的代码,你将可以让 IE...
welogic struts2文件下载中文件名乱码:在tomcat中是好的哦
往往开发环境和生产环境在环境部署时会遇到很多奇怪的问题,此次word文档下载就被卡住了,通过一番努力终于找到了原因,分享给大家。上传文件txt格式,内有方法详细的代码注释及原因说明,jar包比较常见,大家自行...
( response.setHeader()下载中文文件名乱码问题
修改了jar源代码,解决multipart/form-data上传包含中文文件名乱码问题,覆盖apache-jmeter-4.0\lib\ext目录下ApacheJMeter_http.jar即可。
1.软件仅对Teleport Ultra 软件 下载网页中 “XX.html” 网页文件名中 “XX” 的乱码进行修复,此处XX为中文字符; 2.软件需要在WIN7及以上系统使用; 3.软件运行依托 .NET 4.5.1; 4.软件仅供技术交流使用,并未...
Java实现文件下载并解决中文文件名乱码
我上传的是一个servlet,里面有详细的说明,自己看看就知道怎么做了
jsch-0.1.53 不支持修改编码格式,sftp.setFilenameEncoding("GBK");这样修改是不起作用的,所以必须修改源码。此处是修改源码后重新导出的jar包。
多文件上传例子,彻底解决中文乱码问题了。总结中文乱码问题如下: 1、所有页面都用UTF-8。 2、写过滤器,设置request.setCharacterEncoding("UTF-8")。 3、javascript脚本里用encodeURI(str)。 4、适当的时候,在...
主要介绍了详解关于java文件下载文件名乱码问题解决方案,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧