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")); 


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