/**
* unicode编码转换为汉字
* @param unicodeStr 待转化的编码
* @return 返回转化后的汉子
*/
public static String UnicodeToCN(String unicodeStr) {
Pattern pattern = Pattern.compile("(\\\\u(\\p{XDigit}{4}))");
Matcher matcher = pattern.matcher(unicodeStr);
char ch;
while (matcher.find()) {
//group
String group = matcher.group(2);
//ch:'李四'
ch = (char) Integer.parseInt(group, 16);
//group1
String group1 = matcher.group(1);
unicodeStr = unicodeStr.replace(group1, ch + "");
} return unicodeStr.replace("\\", "").trim();
}
/**
* 汉字转化为Unicode编码
* @param CN 待转化的中文
* @return 返回转化之后的unicode编码
*/
public static String CNToUnicode(String CN) { try {
StringBuffer out = new StringBuffer("");
//直接获取字符串的unicode二进制
byte[] bytes = CN.getBytes("unicode");
//然后将其byte转换成对应的16进制表示即可
for (int i = 0; i < bytes.length - 1; i += 2) {
out.append("\\u");
String str = Integer.toHexString(bytes[i + 1] & 0xff);
for (int j = str.length(); j < 2; j++) {
out.append("0");
}
String str1 = Integer.toHexString(bytes[i] & 0xff);
out.append(str1);
out.append(str);
}
return out.toString();
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
return null;
}

测试

 public static void main(String[] args) {
String Unicodestr = "\\u674e\\u56db";
System.out.println("unicode为\\u674e\\u56db对应的中文是:"+Util.UnicodeToCN(Unicodestr));
String CNStr = "李四";
System.out.println("李四对应的Unicode编码是:"+Util.CNToUnicode(CNStr)); }

测试结果:

这里可能需要解释的是:\ufeff。\ufeff表示的是UTF-16(大端序)的编码方式。在显示的时候可以将\ufeff过滤掉

最新文章

  1. instancesRespondToSelector与respondsToSelector的区别
  2. 压力测试报出503错误---ASP.NET支持大并发的相关配置
  3. redis session共享中的序列化问题
  4. Codeforces Round #382 (Div. 2) A. Ostap and Grasshopper bfs
  5. LINQ to DataSet的DataTable操作
  6. Qt之等待提示框(QTimer)
  7. 【转】IT管理人才必备的十大能力
  8. &lt;&lt;c 和指针 &gt;&gt; 部分笔记。
  9. Scala学习——基础篇
  10. linux下安装jira详细步骤
  11. 【转】Android 学习笔记——利用JNI技术在Android中调用、调试C++代码
  12. nosql数据库选型
  13. 浏览器控制台console的使用
  14. Oracle基础知识整理
  15. Aspects 源码学习
  16. python requests库学习笔记(下)
  17. CodeForces - 833B The Bakery
  18. Luogu P2575 高手过招
  19. Linux下初次使用github
  20. 加密对象到locastorage / 从 locastorage解密对象

热门文章

  1. Excel公式笔记
  2. Vue:如何在vue-cli中创建并引入自定义组件
  3. PCL点云分割(3)
  4. Kubernetes集群部署之五node节点部署
  5. Spark--sql--所有函数举例(spark-2.x版本)
  6. css特效 - 环形文字
  7. meat标签
  8. git 设置tracking information
  9. js设计模式(四)---迭代器模式
  10. 测量应用程序cass和cad的使用感受