1.TOMCAT的UTIENCODING=UTF-8;
2.过滤器的编码是GB2312;
3.页面的编码是UTF-8;
4.在开发环境上(本地WINDOWS下不会出现);从FORM得到的参数是乱码.
5.在最前面加了request.setCharacterEncoding("UTF-8");也没效果。
6.  keyWord  =   new   String(keyWord.getBytes("ISO-8859-1"),"UTF-8");这一句也没效果。
有谁以前遇到过这种情况吗?是怎么处理的?谢谢

解决方案 »

  1.   

    或者上面的问题是,从FORM表单得到的元素是用GB2312编码的。然后在页面上要用UTF-8的编码显示;要怎么处理?不用JS。因为是做的手机门户。在JSP中要怎样把GB2312的编码转换成UTF-8?
      

  2.   

    你吧所有的编码方式都统一为utf-8试试,
    并在处理form表单的类中使用:
    request.setCharacterEncoding("utf-8");
    就可以了
      

  3.   

    思路:
    编码错误就是和本地编码不兼容造成!
    本地请求时已经将编码集提交给你了!
    回传的时候用提交的那个编码转化就行了!
    response.setXXXX(请求的那个编码)
      

  4.   

      keyWord  =  new  String(keyWord.getBytes("ISO8859-1"),"UTF-8");
      

  5.   

    keyWord  =  new  String(keyWord.getBytes("GB2312"),"UTF-8");
      

  6.   

    keyWord  =  new  String(keyWord.getBytes("GB2312"),"UTF-8");这个没效果;得到表单中的元素是“口口口”。
    另外页面需要UTF-8。因为是一个手机门户。
      

  7.   

    最好不要用两种编码,保持一致,要么都用UTF-8,要么都用GB2312
      

  8.   

    数据库用的什么?如果是mysql的话,请把mysql安装目录下的my.ini里的两个default-charset-set分别改为gbk和utf8
    页面和filter统一用utf-8就可以了
      

  9.   

    没涉及到数据库。这个参数没有入库。直接就从actionForm传递的。