IDEA中tomcat插件版本7中文乱码问题
IDEA中tomcat插件版本7中文乱码问题
问题描述:
因为idea中tomcat插件版本只到7,他的默认解码方式为:ISO-8859-1,又因为浏览器的编码方式为UTF-8所以如果使用tomcat接收中文,会有乱码现象.注:(若使用tomcat 8.0以后版本,则不用考虑这个问题,默认的解码方式已改为UTF-8)
解决方案:
POST : 设置输入流的编码
request.setCharacterEncoding("UTF-8");//设置字符输入流的编码
通用方式(GET/POST) : 先编码,再解码
String username = "张三";
//1. URL编码
String encode = URLEncoder.encode(username, "utf-8");
System.out.println(encode);
//2. URL解码
//String decode = URLDecoder.decode(encode, "utf-8");
String decode = URLDecoder.decode(encode, "ISO-8859-1");
System.out.println(decode);
//3. 转换为字节数据,编码
byte[] bytes = decode.getBytes("ISO-8859-1");
/* for (byte b : bytes) {
System.out.print(b + " ");
}*/
//4. 将字节数组转为字符串,解码
String s = new String(bytes, "utf-8");
System.out.println(s);
结果打印
%E5%BC%A0%E4%B8%89
å¼ ä¸
张三
补充: URL编码
1.将字符串按照编码方式转为二进制
每个字节转为两个16进制数并在前面加上%
本文来自博客园,作者:Haziy,转载请注明原文链接:https://www.cnblogs.com/zhangyouren/p/16527025.html
本博客所有文章仅用于学习、研究和交流目的,欢迎非商业性质转载。
博主的文章没有高度、深度和广度,只是凑字数。由于博主的水平不高,不足和错误之处在所难免,希望大家能够批评指出。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?