由于計算機中的數據都是以二進(jìn)制形式存儲的,因此,當傳輸文本時(shí),就會(huì )發(fā)生字符和字節之間的轉換。字符與字節之間的轉換是通過(guò)查碼表完成的,將字符轉換成字節的過(guò)程稱(chēng)為編碼,將字節轉換成字符的過(guò)程稱(chēng)為解碼,如果編碼和解碼使用的碼表不一致,就會(huì )導致亂碼問(wèn)題。
對于有些解碼錯誤,可以通過(guò)修改瀏覽器的解碼方式解決。在瀏覽器中單擊“查看”——“編碼”——utf-8選項,將瀏覽器的編碼方式設置成UTF-8。由此說(shuō)明,通過(guò)修改瀏覽器的編碼方式可以解決亂碼,但是,這樣的做法顯然能不可取,為此,在HttpServletResponse對象中,提供了兩種解決亂碼的方案,如下:
1、//設置HttpServletResponse使用utf-8編碼
response.setCharacterEncoding("utf-8");
//通知瀏覽器使用utf-8解碼
response.setHeadre("Content-type","text/html;charset=utf-8");
2、包含第一種方法的兩個(gè)功能
responsesetContentType("text/html;charaset=utf-8");
通常情況下,為了使代碼更加簡(jiǎn)潔,才用第二種方式。
聯(lián)系客服