概述
/**
* 对文件流输出下载的中文文件名进行编码 屏蔽各种浏览器版本的差异性
* @throws UnsupportedEncodingException
*/
public static String encodeChineseDownloadFileName(
HttpServletRequest request, String pFileName) throws UnsupportedEncodingException {
String filename = null;
String agent = request.getHeader("USER-AGENT");
if (null != agent){
if (-1 != agent.indexOf("Firefox")) {//Firefox
filename = "=?UTF-8?B?" + (new String(org.apache.commons.codec.binary.Base64.encodeBase64(pFileName.getBytes("UTF-8"))))+ "?=";
}else if (-1 != agent.indexOf("Chrome")) {//Chrome
filename = new String(pFileName.getBytes(), "ISO8859-1");
} else {//IE7+
filename = java.net.URLEncoder.encode(pFileName, "UTF-8");
filename = StringUtils.replace(filename, "+", "%20");//替换空格
}
} else {
filename = pFileName;
}
return filename;
}
另外可以修改下IE的配置,也可以
1.Win + R输入gpedit.msc打开组策略编辑器
2.定位到计算机配置→管理模板→windows组件→Internet Explorer→自定义用户代理字符串
3.双击打开设置已启动,输入字符串“MSIE 9.0”
4.点击确定
5.重启浏览器即可生效
之前的
http://blog.csdn.net/dracotianlong/article/details/9765513
最后
以上就是积极导师为你收集整理的解决IE11 12 下载附件文件名乱码问题的全部内容,希望文章能够帮你解决解决IE11 12 下载附件文件名乱码问题所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复