在地址栏里敲入中文,回车后它会自动转成%、字母、数字,java里面有没有这个方法?求正确的解。

解决方案 »

  1.   

    URLEncoder和URLDecoderimport java.io.*;
    import java.net.*;public class Test
    {
    public static void main(String[] args) throws UnsupportedEncodingException
    {
    String str = new String("你好,世界!");
    String encode = URLEncoder.encode(str, "UTF8");
    System.out.println(encode);
    String decode = URLDecoder.decode(encode, "UTF8");
    System.out.println(decode);
    }
    }
      

  2.   

    这种方法与网页地址里的编码还是不一样。比如:用这种方法把“你好”转变为“%E4%BD%A0%E5%A5%BD
    你好
    ”,但实际上是“%C4%E3%BA%C3”,参见百度贴吧“你好”吧的网址:http://tieba.baidu.com/f?kw=%C4%E3%BA%C3
      

  3.   

    百度用的是GBK编码,你把utf8改为GBK就行了import java.io.*;
    import java.net.*;public class Test
    {
    public static void main(String[] args) throws UnsupportedEncodingException
    {
    String str = new String("你好,世界!");
    String encode = URLEncoder.encode(str, "gbk");
    System.out.println(encode);
    String decode = URLDecoder.decode(encode, "gbk");
    System.out.println(decode);
    }
    }