java unicode 转为汉字

java unicode 转为汉字原文出处:http://blog.chenlb.com/2009/07/java-unicode-to-chinese.html网上搜索了一大堆内容,大都是汉字转unicode的。要么就理想化的unicode转为汉字(全是\uxxxx的,用spilt取再转的)。记录以前写输出格式为json的时候,用过的库是可以把汉定转为unicode的,并且也读取。那就用js

原文出处:http://blog.chenlb.com/2009/07/java-unicode-to-chinese.html

网上搜索了一大堆内容,大都是汉字转 unicode 的。要么就理想化的 unicode 转为汉字(全是 \uxxxx 的,用 spilt 取再转的)。记录以前写输出格式为 json 的时候,用过的库是可以把汉定转为 unicode 的,并且也读取。那就用 json 库来转汉字,其实可以自己写个小程序来转,算了懒一下。

我下载官方的 java 的 json的 jar 包。http://www.json.org/java/json.zip, 可以到 http://www.json.org/java/index.html 看 javadoc。

示例代码:

  1. public void testUDecode() {  
  2.     String str = “make in \u4e2d\u56fd”;  
  3.     for(char ch : “make in 中国”.toCharArray()) {  
  4.         if(ch > 128) {  
  5.             System.out.print(“\\u”+Integer.toHexString(ch));  
  6.         } else {  
  7.             System.out.print(ch);  
  8.         }  
  9.     }  
  10.     System.out.println();  
  11.     System.out.println(str);  
  12.     str = “make in \\u4e2d\\u56fd”;  
  13.   
  14.     String v = “‘”+str+“‘”;  
  15.     System.out.println(v);  
  16.   
  17.     try {  
  18.         System.out.println(new JSONTokener(v).nextValue().toString());  
  19.     } catch (JSONException e) {  
  20.         e.printStackTrace();  
  21.     }  
  22. }  

本身java 是支持unicode 编码的,所以像 str = “make in \u4e2d\u56fd”; 打印出来是正常的。我们要的转换是对 str = “make in \\u4e2d\\u56fd”;。

汉字转 unicode 可以用 Integer.toHexString(ch)。unicode 转汉字关键的是 (char)Integer.parseInt(“4e2d”, 16)。知了这些就可以自己写程序了。

当然还有 java 的 native2ascii 工具,附上用法:JDK自带的native2ascii工具完全揭密

今天的文章java unicode 转为汉字分享到此就结束了,感谢您的阅读,如果确实帮到您,您可以动动手指转发给其他人。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/26720.html

(0)
编程小号编程小号

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注