JavaWeb之response响应中文乱码问题
Posted 这名字还可以改吗
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JavaWeb之response响应中文乱码问题相关的知识,希望对你有一定的参考价值。
response向页面响应中文乱码问题
字节流
* 有可能乱码,与中文转换成字节数组、浏览器打开的默认字符编码有关
* 解决方式:将中文转成字节数组的时候和浏览器默认打开的时候采用的字符集一致
response.setHeader("Content-Type", "text/html;charset=utf-8"); response.getOutputStream().write("张三".getBytes("utf-8"));
字符流
* 肯定乱码,因为response字符缓冲区的默认编码是iso-8859-1
* 解决方式:设置response获得字符流缓冲区的编码和设置浏览器默认打开时候采用的字符集一致即可
//设置浏览器默认打开字符集 response.setHeader("Content-Type", "text/html;charset=utf-8"); //设置字符流缓冲区编码 response.setCharacterEncoding("utf-8"); response.getWriter().println("张三");
* 使用字符流向页面响应还有一种简化写法
response.setContentType("text/html;charset=utf-8");
response.getWriter().println("张三");
以上是关于JavaWeb之response响应中文乱码问题的主要内容,如果未能解决你的问题,请参考以下文章
Java实战之04JavaWeb-02Request和Response
JavaWeb/ forward跳转到jsp页面后出现中文乱码问题