JavaWeb解决中文乱码
request请求参数
- GET请求
new String(xxx.getBytes("ISO-8859-1"),"UTF-8");
- POST请求
request.setCharaterEncoding("UTF-8");
response响应数据
响应对象向浏览器发送数据的方法
- getOutputStream
获取输出字节流,不能直接输出中文,会报异常- 解决乱码:手动将中文用UTF-8码表编码变成字节传输
resp.getoutputStream().write("哈".getBytes("UTF-8"));
- 解决乱码:手动将中文用UTF-8码表编码变成字节传输
- getWrite
获取输出字符流- 解决乱码:通知浏览器使用UTF-8解码
response.setContentType("text/html;charset=utf-8");
response.setHeader("contentType","text/html;charset=utf-8");
- 解决乱码:通知浏览器使用UTF-8解码
- 要点
- 两个都有write()和print()两个输出方法,print()方法就是将write()方法进行了封装
- getOutputStream()和getWrite()这两个方法不能同时使用,一次只能使用一个,否则报异常