jsp(get中文乱码问题)

来源:互联网 发布:欧盟贸易数据 编辑:程序博客网 时间:2024/06/06 03:08
sp中文乱码,想必搞过jsp之类的都接触过这类问题。上段时间发现Q群里(一般的垃圾小群了)有人在问这个问题,这种菜鸟级问题我原本是不会太理睬的。可是看群里人墨迹了半天没人结决。本人有点晕,看看他们搜索到的一些网址,好像大多在解决post传输问题,这类问题早就不是问题喽。看看群里的所谓有识之士,拿找来的网页乱投医,哎。

在百忙之中写段代码甩之:

<%
String test = new 
 String(request.getParameter("test").getBytes("ISO-8859-1"),"gbk");
 
response.setCharacterEncoding("utf-8");
 
out.print(test);
%>

保存为test.jsp

在浏览器地址栏中键入http://XXXXXX?test=测试

中文正常显示无乱码。可能对我上述写的代码网上可以收到一箩筐类似的,不过为了那些COPY小子,我在这里再花点时间解释一下。

new  String(request.getParameter("test").getBytes("ISO-8859-1"),"gbk");

ISO-8859-1是tomcat默认的转码,这里可能有人会提到改tomcat的服务器配置脚本,但那不是tomcat的bug。gbk一般的中文浏览器都会发这个格式,应该是中文浏览器通用格式了。

上段代码大义:把tomcat转码后的ISO-8859-1恢复,也可以说是还原回gbk,这步很关键。

response.setCharacterEncoding("utf-8");这里的utf-8可以改成gbk,无所谓,只是个和浏览器编码沟通问题。

原创粉丝点击