java EE一行代码解决乱码(设置服务器编码;设置浏览器编码方式)

java
Author

dd21

Published

December 5, 2022

1.1字节流(getOutputStream())向浏览器输出中文出现乱码解决方案:

字节流:可以输出字符、图片、声音及其他二进制数据 不设置【可能】会出现乱码情况 字符流:只可以输出字符 不设置会出现 ‘’??????’ 中文变【问号】情况 在这里插入图片描述

处理乱码的方案:让浏览器和服务器端的编码方式一致

1.1 .1设置服务器编码

        String outString = "服务器编码设置UTF-8";
        
        ServletOutputStream out  = response.getOutputStream();
        // 服务器编码设置UTF-8
        
        // 输出到浏览器
        out.write(outString.getBytes("utf-8"));

1.1.2 设置浏览器编码

方法一:(简便写法)

response.setContentType("text/html;charset=utf-8");

方法二:

response.setHeader("Content-Type", "text/html;charset=utf-8");

1.2字符流(getWriter())向浏览器输出中文出现乱码解决方案:

方法一:

response.setContentType("text/html;charset=utf-8");

方法二:

        // 设置服务器编码
        response.setCharacterEncoding("utf-8");
        // 设置浏览器编码格式
        response.setHeader("content-type", "text/html;charset=utf-8");