URL编码的目的是把任意文本数据编码为%前缀表示的文本,便于浏览器和服务器处理;
规则:
- 如果字符是
AZ,az,0~9以及-、_、.、*,则保持不变; - 如果是其他字符,先转换为UTF-8编码,然后对每个字节以
%XX表示。
import java.net.URLEncoder;
import java.nio.charset.StandardCharsets;
public class Main {
public static void main(String[] args) {
//编码
String encoded = URLEncoder.encode("中文!", StandardCharsets.UTF_8);
System.out.println(encoded);
//解码
String decoded = URLDecoder.decode("%E4%B8%AD%E6%96%87%21", StandardCharsets.UTF_8);
System.out.println(decoded);
}
}