WEB專案-向頁面輸出中文亂碼的問題
1.向頁面輸出中文有亂碼問題。
* ServletOutputStream getOutputStream() 獲取輸出的位元組流
* PrintWriter getWriter() 獲取輸出的字元流
2.解決位元組輸出中文亂碼的問題
*.設定瀏覽器開啟檔案時採用的編碼。(編碼一)
response.setHeader("Content-Type", "text/html;charset=UTF-8");
*.獲取中文的位元組陣列也採用固定的編碼。(編碼二)
"哈羅我的".getBytes("UTF-8")
*.只需要編碼一和編碼二保證一致就不會亂碼。
3.解決字元的中文亂碼
*.設定response緩衝區的編碼(預設是ISO-8859-1)。
response.setCharacterEncoding("UTF-8");
*.設定瀏覽器的預設開啟檔案的編碼
response.setHeader("Content-Type", "text/html;charset=UTF-8");
4.字元的中文亂碼可以有簡單的寫法
response.setContentType("text/html;charset=UTF-8");
5.總結:使用response物件向瀏覽器輸出中文的。
* 位元組(response.getOutputStream().write())
* 設定瀏覽器開啟檔案時所採用的編碼
* response.setHeader("Content-Type", "text/html;charset=UTF-8");
* 獲取中文的位元組陣列的時候,提供一個編碼。
* "哈羅我的".getBytes("UTF-8")
* 字元(response.getWriter().write())
* 設定瀏覽器開啟檔案時所採用的編碼
* response.setHeader("Content-Type", "text/html;charset=UTF-8");
* 設定response緩衝區的編碼。
* response.setCharacterEncoding("UTF-8");