我想知道如何将“\ u106A”转换为“A”或其他内容?我发现以下编码将Hex转换为字符,但它失败了
public static String convertHexToString(String hex){
StringBuilder sb = new StringBuilder();
StringBuilder temp = new StringBuilder();
for( int i=0; i<hex.length()-1; i+=2 ){
String output = hex.substring(i, (i + 2));
int decimal = Integer.parseInt(output, 16);
sb.append((char)decimal);
temp.append(decimal);
}
return sb.toString();
}
答案 0 :(得分:1)
您可以使用StringEscapeUtils.unescapeJava
Apache库中的Commons Lang
。
final String input = "\\u0048\\u0065\\u006c\\u006c\\u006f\\u002c\\u0020\\u0057\\u006f\\u0072\\u006c\\u0064\\u0021";
final String output = StringEscapeUtils.unescapeJava(input);
System.out.println("Output : " + output);
// Output : Hello, World!