我现在做的系统使用的是myeclipse,因为他的默认字符集是ISO-8895-1 所以有中文输入的地方我把把字符都转换成了UTF-8。但是最近却发现一个错误,我在修改个人信息时,字符转换时没错的,但是在另一个地方,也就是提交订单的是后因为也涉及到个人信息的修改,此时我再转换字符集中文就出现了乱码,不转换时倒是正确的。请问是怎么回事呀。谢谢

解决方案 »

  1.   

    统一编码 写一个方法
    public String  changeToString(String str){String s=strbyte temp[]=s.getBytes("ISO-8859-1");s=new String(temp);return s;
    }
    tableName=className.changeToString(table.getName());
      

  2.   

    你在Catalina_home/conf/server.xml中的 port=8080的后面加入redirectPort="8443" useBodyEncodingForURI="true" 就可以了
      

  3.   

    因为你的修改信息需要提交到后台,涉及到URI传递,所以不加useBodyEncodingForURI="true"就会出现乱码的问题
      

  4.   

    lz你的意思是什么?你编码的时候硬代码里有中文么?
    另外任何字符集转成iso-8859-1是没有问题的.但是你要utf-8强转gbk什么的就会丢失信息.
    而且iso-8859-1基本和字节流一样了.
    另外web应用的话似乎可以用过滤器.虽然我没用过,不过据说用过的都说好~囧
      

  5.   

    //转换输入值的字符集(假设输入字符串变量为input)
    byte[] bytes = input.getBytes("ISO-8859-1");
    input = new String(bytes);