各位大哥请教一个问题:
我所有页面都是utf-8的编码,数据库也是,一直都没有出现乱码的问题,写了个过滤器。
可是现在因为需要而用到URL传递中文变量的问题,这样就出现了乱码,我试过用URLEncoder进行再编码,可是还是URLDecoder以后仍然是乱码,是我用的不对么???请教各位~~~~~~~~~~谁指点下解决办法~~~

解决方案 »

  1.   

    用URLencoder编码时要确保不是乱码,若已是乱码了,再编码,再用URLDecoder解码,当然还是乱码了.
    编码时你打印看看有没乱码就知道了.
      

  2.   

    传中文的确会乱码,用post提交,或者你自己给它包装,传走的时候再解开,就不会乱码
      

  3.   

    看看我之前的一篇帖子,或许有帮助!
    http://topic.csdn.net/u/20090420/18/824ecbde-da66-4d21-986f-d752b399f66a.html
      

  4.   

    直接在url中传入中文参数是会乱码的,虽然做了过滤,也修改了server.xml,但显示的还是
    乱码,希望高手来指点啊!
      

  5.   

    有没有用这样的方法:String yourVarity = 
          new String(request.getParameter("varityName").getByte("ISO-8859-1"),"UTF-8");
      

  6.   

    发送javascript代码:
    encodeURIComponent(encodeURIComponent("str"));
    接收JAVA代码:
    java.net.URLDecoder.decode(request.getparameter("your str"),"UTF-8");
      

  7.   

    String Varity = 
          new String(request.getParameter("varityName").getByte("ISO-8859-1"),"gbk");
      

  8.   

    情况是这样:我在未用URLEncode编码之前,在地址栏里显示的是正常的中文,没有乱码,
    但是在页面上用<C:out>输出的时候就显示不正常了,显示的不是?号也不是繁体乱码汉字。
      

  9.   

    javascript:
    var url = "/amd/geocoding.aspx?key="+encodeURI(keyword)+"&map="+map+"&max="+max_number;//keyword可能为中文
      

  10.   

    试试在页面上写<%request.setCharacterEncoding("iso8859_1");%>.
      

  11.   

    乱码问题一般是表单提交设置为post 或者新建过滤器 而且最好不要在url地址重写的地方传中文,可以用隐藏域来实现