JSP Request.getParameter中文乱码的误区

时间:2007-07-13 13:49   作者:ChenReal    阅读:2570

Request.getParameter会出现乱码 这个问题频频出现在非UTF-8编码的程序里头。 网上一般的解决方法有三个:

  • 1、全部转成UTF-8
  • 2、request. setCharacterEncoding("GBK");
  • 3、String s=new String(request.getPrarameter("s").getBytes("ISO-8859-1"),"GB2312");

但是最近发现用了方法1仍然还会出现中文“乱码”的问题!

郁闷了多天后忽然恍然大悟——自己陷入了一个误区。

在gb2312的时候,我们习惯于这样的测试方法

test.jsp?s=测试

但在UTF-8则不同,必须加入urlEncode方可获得正确的中文编码。如果需要测试的话,最佳的方法还是

<form method="get" action="test.jsp">
  <input name="s"/>
</form>

 

评论
0/200