public class UnicodeChinese {
//Unicode转中文方法
private static String unicodeToCn(String unicode) {
/** 以 \ u 分割,因为java注释也能识别unicode,因此中间加了一个空格*/
String[] strs = unicode.split("\\\\u");
String returnStr = "";
// 由于unicode字符串以 \ u 开头,因此分割出的第一个字符是""。
for (int i = 1; i < strs.length; i++) {
returnStr += (char) Integer.valueOf(strs[i], 16).intValue();
}
return returnStr;
}
//中文转Unicode
private static String cnToUnicode(String cn) {
char[] chars = cn.toCharArray();
String returnStr = "";
for (int i = 0; i < chars.length; i++) {
returnStr += "\\u" + Integer.toString(chars[i], 16);
}
return returnStr;
}
//测试
public static void main(String[] args) {
//Unicode码
String aa = "\u90ED\u9F91\u9F99";
//转中文
System.out.println(aa);
String cnAa = unicodeToCn(aa);
System.out.println("Unicode转中文结果: "+cnAa);
//String unicodeAa = cnToUnicode(cnAa);
//System.out.println("中文转Unicode结果: "+unicodeAa);
}
}