IE文件下载时中文文件名乱码

IE下载时中文文件名乱码,按照网上找的解决方法。

第一种方法如下。

1.Win + R输入gpedit.msc打开组策略编辑器;(详见第3步)

2.定位到计算机配置→管理模板→windows组件→Internet Explorer→自定义用户代理字符串;(详见第4步)

3.双击打开,左上角选中已启动,下方输入字符串“MSIE 9.0”;(详见第5步)

4.点击确定;

5.重启浏览器即可。

结论:此方法未能解决问题。


我的问题比较奇怪,本地电脑IE下载是正常的,但是其他测试人员电脑下载却会乱码。

折腾几天后,找到解决方法。

原本代码:

//设置文件输出类型
response.setContentType(contentType);  
response.setHeader("Content-disposition", "attachment; filename=" +
	 new String(storeName.getBytes("utf-8"), "ISO8859-1")); 	    
注意上面的utf-8,问题就在这里。

本身文件在上传时写入的文件编码不是utf-8,但是在读取下载是将编码设置为utf-8所以出现乱码。

解决方法:去掉编码转换,使用本来的编码格式。

//设置文件输出类型
response.setContentType(contentType);  
response.setHeader("Content-disposition", "attachment; filename=" +
	 new String(storeName.getBytes(), "ISO8859-1")); 


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章