瀏覽器文件保存編碼是什麼
靜態頁面(html):  保存文件時的編碼選項(默認為ANSI,中文操作系統ANSI即為GBK)必須得與html頁面中的content-Type(即在meta標籤中配置的 http-equiv="content-Type")中的配置的碼一致,訪問此頁面時才不會出現亂碼。(若不顯示定義meta標籤,則默認是meta標 籤中給出的是系統ANSI編碼,中文操作系統是GBK)
動態頁面(jsp): 保存文件時的編碼選項必須與jsp頁面中的pageEncoding屬性中配置的編碼一致(或者在沒有pageEncoding屬性時與 contenType屬性中配置的編碼一致,兩者的優先級是:pageEncoding(保存文件的編碼,一般也程序讀入文件的編碼方式)>contentType(http報頭的編碼方式ontentencoding())),才不會出現亂碼。
我們常用的系統文件編碼有ANST、Unicode、Unicode big endian、UTF-8 四種。編碼不一樣,存儲方式不一樣 。 不同的編碼只能顯示特定的內容,一般在複製保存網頁文件是會遇到這種情況。
一、火狐下載中文文件名亂碼
導致亂碼的寫法:
eader(“Content-Disposition”, “attachmentfilename=中文文件名”,”utf-8”))
修正後的寫法
eader(“Content-Disposition”, “attachmentfilename*=utf-8’zh_cn’中文文件名”,”utf-8”))
不過第二種寫法並不兼容ie8,下載後的文件名為:寫了該代碼的JSP頁面的名稱,在IE11上測試沒有問題。
二、下載文件默認編碼修改
Java代碼
String resultStr=”返回結果”
byte[] bytes = ytes(“utf-8”) //字符串轉Byte數組,加編碼格式。