中文转unicode编码:
首先,我给大家提供一个中文转unicode编码的工具
链接:
//download.csdn.net/download/qq_43560721/11988683
操作步骤:
1.用记事本打开.bat文件进行编辑。
2..bat文件一共有3行代码,把后两行删掉,只留一行。
3.把你想要转的中文放入一个资源文件。
4.把此资源文件的路径替换掉.bat文件中原来放的路径且放两遍。
5.找到你的.bat文件,双击运行。
6.重新打开资源文件就可以看到已经转好的unicode编码。
也可用java代码转:
/*
* 中文转unicode编码
*/
public static String toUnicode(String s) {
String as[] = new String[s.length()];
String s1 = "";
for (int i = 0; i < s.length(); i++) {
as[i] = Integer.toHexString(s.charAt(i) & 0xffff);
s1 = s1 + "\\u" + as[i];
}
return s1;
}
unicode编码转中文:
/*
* unicode编码转中文
*/
public static String decodeUnicode( String dataStr) {
try{
StringBuffer buffer = new StringBuffer(dataStr==null?"":dataStr);
if(StringUtils.isNotBlank(dataStr) && dataStr.contains("\\u")) {
buffer.delete(0,buffer.length());
int start = 0;
int end = 0;
while (start > -1) {
end = dataStr.indexOf("\\u", start + 2);
String a="";//如果夹着非unicode编码的字符串,存放在这
String charStr = "";
if (end == -1) {
if(dataStr.substring(start + 2, dataStr.length()).length()>4){
charStr = dataStr.substring(start + 2, start + 6);
a = dataStr.substring(start + 6, dataStr.length()) ;
}else{
charStr = dataStr.substring(start + 2, dataStr.length());
}
} else {
charStr = dataStr.substring(start + 2, end);
}
char letter = (char) Integer.parseInt(charStr.trim(), 16); // 16进制parse整形字符串。
buffer.append(new Character(letter).toString());
if(StringUtils.isNotBlank(a)){
buffer.append(a);
}
start = end;
}
}
return buffer.toString();
} catch (Exception e){
System.out.println(" 字符串转换失败");
}
return dataStr;
}
测试如下:
String str = decodeUnicode("\u5c0f\u5c0f\u820d");
String str2 =toUnicode("小小舍");
System.out.println("unicode编码转中文:"+str+"---------中文转unicode编码:"+str2);