[英]Convert UTF-8 Unicode string to ASCII Unicode escaped String
[英]Convert unicode string to an escaped ASCII string with '%XX' characters
我有Java代碼,它獲取帶有UTF字符的URL,應將其轉換為“轉義”字符,例如%A4%FD
等。
有沒有辦法進行這種轉換?
看一看java.net.URLEncoder。 或者,您可以基於String.format制作自己的編碼器:
char c = 'Ë';
String hex = System.out.printf("%%%02X%%%02X", c & 0xFF, (c >> 8) & 0xFF);
這會將c轉換為%CB%00
隱蔽字符串:
String s = "1Ë2";
StringBuilder sb = new StringBuilder();
for(char c : s.toCharArray()) {
if (c > 128) {
sb.append(String.format("%%%02X%%%02X", c & 0xFF, (c >> 8) & 0xFF));
} else if (c == '%'){
sb.append("%%");
} else {
sb.append(c);
}
}
System.out.println(sb);
結果:
1%CB%002
只需使用此:URLEncoder.encode(str2,“ utf-8”)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.