`
geelong
  • 浏览: 115220 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

URLEncoder URLDecoder HtmlUtils

阅读更多

 

	public static void main(String[] args) throws UnsupportedEncodingException {
		String url = "http://www.baidu.com?a=b&b=c&abc=你好";
		String en  = URLEncoder.encode(url, "UTF-8");
		System.out.println(en);
		String decode = URLDecoder.decode(en, "UTF-8");
		System.out.println(decode);
		String decode2 = URLDecoder.decode(decode, "UTF-8");
		System.out.println(decode2);  //2次decode不会再变化
		
		String es = HtmlUtils.htmlEscapeDecimal(url);
		System.out.println(es);  //没有html的特殊符号,不会有变化
		
		String esen = HtmlUtils.htmlEscapeDecimal(en);
		System.out.println(esen);
		
//		http%3A%2F%2Fwww.baidu.com%3Fa%3Db%26b%3Dc%26abc%3D%E4%BD%A0%E5%A5%BD
//		http://www.baidu.com?a=b&b=c&abc=你好
//		http://www.baidu.com?a=b&b=c&abc=你好
//		http://www.baidu.com?a=b&b=c&abc=你好
//		http%3A%2F%2Fwww.baidu.com%3Fa%3Db%26b%3Dc%26abc%3D%E4%BD%A0%E5%A5%BD

	}
 

 

 

结论:

1 URLEncoder 会把中文编码为 %ab% 这样的格式,防止中文乱码

2 URLDecoder 解码恢复原样后,继续解码,字符串并不会有别的改变

 

3 HtmlUtils 用于有html特殊的字符转换成转义字符,如 & 转成 &nbsp 等,   如不转换这浏览器解析会出现错误

 

 

 

注意 当对 http:// 进行encode后,浏览器将把它识别为相对路径,而非绝对路径

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics