All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.hecloud.runtime.common.utils.Unicoder Maven / Gradle / Ivy

package com.hecloud.runtime.common.utils;

/**
 * Unicode编码解码器
 *
 * @author LoveInBJ
 */
public class Unicoder {
    /**
     * 中文转Unicode编码
     *
     * @param content 中文字符串
     * @return Unicode编码
     */
    public static String encode(String content) {
        char[] utfBytes = content.toCharArray();
        String unicode = "";
        for (int i = 0; i < utfBytes.length; i++) {
            String hexB = Integer.toHexString(utfBytes[i]);
            if (hexB.length() <= 2) {
                hexB = "00" + hexB;
            }
            unicode = unicode + "\\u" + hexB;
        }
        return unicode;
    }

    /**
     * Unicode转中文
     *
     * @param unicode Unicode编码
     * @return 中文
     */
    public static String decode(String unicode) {
        int start = 0;
        int end = 0;
        final StringBuilder builder = new StringBuilder();
        while (start > -1) {
            end = unicode.indexOf("\\u", start + 2);
            String charCode;
            if (end == -1) {
                charCode = unicode.substring(start + 2, unicode.length());
            } else {
                charCode = unicode.substring(start + 2, end);
            }
            // 16进制parse整形字符串。
            char letter = (char) Integer.parseInt(charCode, 16);
            builder.append(new Character(letter).toString());
            start = end;
        }
        return builder.toString();
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy