简单的把问题概述下
访问自己测试的http://127.0.0.1:8888/TestUrl/do.do?m=t&id=%C6%DF%C6%DFIT%D6%D0%B9%FA在ACTION里面获得id的值为什么是乱码啊?谁能告诉我一下,过滤器也写了是GBK的编码我想在ACTION获得id的值就是%C6%DF%C6%DFIT%D6%D0%B9%FA,然后进行解码就可以获得中文了,请问要怎么解决呢?

解决方案 »

  1.   

    那不是中文,就跟百度一样的! 传的是汉字的GB2312编码,在ACTION里面可以解码获得中文,现在在ACTION里面获得是乱码了,不是GB2312编码了
      

  2.   

    request.setAttribute("agrhql", agrhql.replaceAll("%", "-/-"));
    request.setAttribute("agrhql", agrhql.replaceAll("-/-", "%"));
    要进行转换,页面和类里面编码方式不一样
      

  3.   

    提交页面 好像是不能传中文,没见过这么传的。
    还是提交form吧 这样更安全
      

  4.   

    拜托不是中文好不!我传的是这个 %C6%DF%C6%DFIT%D6%D0%B9%FA 在ACTION要解码的! 现在ACTION里面得到这个是乱码了! 什么传中文啊!
      

  5.   

    编码:java.net.URLEncoder.encode("测试","UTF-8");
    解码:java.net.URLDecoder.decode("%E6%B5%8B%E8%AF%95%26%3Faaa","UTF-8");
    传中文就是这么传的!