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