
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