解决中文乱码的方式有很多种,试了比较原始的一种方式,结果出错了。。。。
贴一下代码:
String data = "中文乱码";
ServletOutputStream out = response.getOutputStream();
String htm = "<meta http-equiv='content-type' content='text/html;charset=UTF-8' />";
out.write(htm.getBytes());
out.write(data.getBytes("utf-8"));
纠结于,这种方法,在ie,edge浏览器都有效,在chrome中,标签直接被打印出来了
要在response那里设置编码
要在response那里设置编码
用 gbk 2312
先设置 或者定义个过滤servlet
解决中文乱码的方式挺多,也不难实现,我现在纠结于 为什么这种方式不可以
一、常识了解
1.GBK包含GB2312,即如果通过GB2312编码后可以通过GBK解码,反之可能不成立;
2.java.nio.charset.Charset.defaultCharset() 获得平台默认字符编码;
3.getBytes() 是通过平台默认字符集进行编码;
二、中文乱码出现
在学习任何一门技术时,经常会有初学者遇到中文......
答案就在这里:servlet中文乱码问题
----------------------Hi,地球人,我是问答机器人小S,上面的内容就是我狂拽酷炫叼炸天的答案,除了赞同,你还有别的选择吗?