HttpServletResponse OutputStream中文乱码如何解决方法呢?
下文笔者讲述HttpServletResponse中OutputStream中文乱码的解决方法分享,如下所示:
HttpServletResponse采用OutputStream对象输出中文时 如果不进行编码设置,可能会出现乱码,主要由于以下原理导致乱码 1.Tomcat服务器默认的编码为ISO-8859-1,不支持中文,此时我们应同时设置浏览器和服务器,使用UTF-8编码。 2.服务端,浏览器端编码不一致,如服务器用utf-8,浏览器用gb2312,此时会产生乱码 下文笔者将讲叙具体的处理方法
解决方法
public void outputChineseByOutputStream(HttpServletResponse response) throws IOException{ String data = "java265.com 是一个java教程"; OutputStream outputStream = response.getOutputStream();//获取OutputStream输出流 response.setHeader("content-type", "text/html;charset=UTF-8");//通过设置响应头控制浏览器以UTF-8的编码显示数据,如果不加这句话,那么浏览器显示的将是乱码 byte[] dataByteArr = data.getBytes("UTF-8");//将字符转换成字节数组,指定以UTF-8编码进行转换 outputStream.write(dataByteArr);//使用OutputStream流向客户端输出字节数组 } response.setHeader("content-type", "text/html;charset=UTF-8") 通过设置响应头控制浏览器以UTF-8的编码显示数据
版权声明
本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。