今天跟一家公司接口,返回的是unicode的编码,并且把字符,数字也unicode的了,所以,显示的时候就是unicode的字符,针对这种情况,写了一个方法:
public static String unUnicode(String text){
StringBuilder gbk = new StringBuilder();
String[] hex = text.split("\\\\u");
for (int i = 1; i < hex.length; i++) { // 注意要从 1 开始,而不是从0开始。第一个是空。
int data = Integer.parseInt(hex[i], 16); // 将16进制数转换为 10进制的数据。
gbk.append((char) data); // 强制转换为char类型就是我们的中文字符了。
}
return gbk.toString();
}
效率不怎么高,望大家能够完善!