urlEncoder和urlDecoder
-
URLEncoder.encode(String s, String enc)
使用指定的编码机制将字符串转换为 application/x-www-form-urlencoded 格式URLDecoder.decode(String s, String enc)
使用指定的编码机制对 application/x-www-form-urlencoded 字符串解码。 -
发送的时候使用URLEncoder.encode编码,接收的时候使用URLDecoder.decode解码,都按指定的编码格式进行编码、解码,可以保证不会出现乱码
-
主要用来http get请求不能传输中文参数问题。http请求是不接受中文参数的。
这就需要发送方,将中文参数encode,接收方将参数decode,这样接收方就能收到准确的原始字符串 了。
例子:
String testString = "abcdefghijk";
try
{
String encoderString = URLEncoder.encode(testString, StandardCharsets.UTF_8.name());
System.out.println(encoderString);
String decodedString = URLDecoder.decode(encoderString, StandardCharsets.UTF_8.name());
System.out.println(decodedString);
} catch (UnsupportedEncodingException e)
{
// TODO Auto-generated catch block
e.printStackTrace();
}
输出:
abcdefghijk%E6%BD%98%E5%AD%A6%E5%86%9B
abcdefghijk