中文编码解码(用来http get请求不能传输中文参数问题)

1.URLEncoder.encode(String s, String enc)
使用指定的编码机制将字符串转换为 application/x-www-form-urlencoded 格式

URLDecoder.decode(String s, String enc)
使用指定的编码机制对 application/x-www-form-urlencoded 字符串解码。

2.发送的时候使用URLEncoder.encode编码,接收的时候使用URLDecoder.decode解码,都按指定的编码格式进行编码、解码,可以保证不会出现乱码

3.主要用来http get请求不能传输中文参数问题。http请求是不接受中文参数的。

这就需要发送方,将中文参数encode,接收方将参数decode,这样接收方就能收到准确的原始字符串了。

public static void main(String[] args) {
    String chinas= "中文编码解码";
    try{
        String encoderString = URLEncoder.encode(chinas,"utf-8");
        System.out.println(encoderString);
        String  decodedString = URLDecoder.decode(encoderString,"utf-8");
        System.out.println(decodedString);

    }catch (UnsupportedEncodingException e){
        e.printStackTrace();
    }
}

输出:
%E4%B8%AD%E6%96%87%E7%BC%96%E7%A0%81%E8%A7%A3%E7%A0%81
中文编码解码
原文地址:https://www.cnblogs.com/shisanye/p/13901281.html