Java中 类似 JS中的encodeURIComponent 代码的实现
今天编写代码的时候遇到了个问题,就是JS中有encodeURIComponent的方法(如果不清楚js中这个方法的用法请点击),而Java中没有类似的方法,例如不能把地址https://www.baidu.com/ 当中的“:” “/” 进行编码,所以就想了一个办法效果和JS中encodeURIComponent方法运行出来的结果一样,请看下面代码并试着运行一下 ^_^
首先要导入这两个包:
import java.net.URLDecoder; import java.net.URLEncoder;
JAVA代码如下:
// 对URL进行编码 String encodeData = URLEncoder.encode("https://www.baidu.com/", "UTF-8") .replaceAll("\+", "%20") .replaceAll("\!", "%21") .replaceAll("\", "%27") .replaceAll("\(", "%28") .replaceAll("\)", "%29") .replaceAll("\~", "%7E"); System.out.println(encodeData); // 结果为:https%3A%2F%2Fwww.baidu.com%2F // 对URL进行解码 String decodeData = URLDecoder.decode(encodeData, "UTF-8"); System.out.println(decodeData); // 结果为:https://www.baidu.com/
大功告成!!!