java url 反转义

在Java中,可以使用 URLDecoder 类来对URL进行反转义。反转义是将已经被转义的字符重新转换回原来的字符。在URL中,一些字符可能被转义成了%xx的形式,其中xx表示该字符在ASCII码表中的十六进制表示。

下面是一个示例代码,演示如何使用 URLDecoder 对URL进行反转义:

import java.net.URLDecoder;
public class URLDecoderExample {
  public static void main(String[] args) throws Exception {
    String url = "https://www.example.com/path?query=%E4%B8%AD%E6%96%87";
    String decodedUrl = URLDecoder.decode(url, "UTF-8");
    System.out.println(decodedUrl);

在这个例子中,我们首先定义了一个URL字符串url,其中包含一个被转义的中文字符。然后我们调用URLDecoder.decode()方法,将该字符串进行反转义,并指定了字符集为UTF-8。最后,我们打印出反转义后的URL字符串decodedUrl

输出结果为:

https://www.example.com/path?query=中文

可以看到,反转义后的URL中,中文字符已经被正确地还原了。

需要注意的是,在实际的应用中,我们需要根据具体的场景来选择合适的字符集。此外,在解析URL参数时,还需要对参数值进行反转义,以确保得到正确的参数值。

  •