java 中文与unicode互转

public class YxqTest {
    public static  void main(String[] args){
        // unicode 打印
        String title="u4F60u597D";
        System.out.println(title);
        
        // 中文-转-unicode
        String str = "你好";
        System.out.println(cnToUnicode(str));

        // unicode-转-中文
        String title2="\u4F60\u597D";
        System.out.println(unicodeToCn(title2));
    }

    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;
    }

    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)).toUpperCase();
        }
        return returnStr;
    }
}

输出:
原文地址:https://www.cnblogs.com/651434092qq/p/11803418.html