原文出处: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。
示例代码:
- public void testUDecode() {
- String str = “make in \u4e2d\u56fd”;
- for(char ch : “make in 中国”.toCharArray()) {
- if(ch > 128) {
- System.out.print(“\\u”+Integer.toHexString(ch));
- } else {
- System.out.print(ch);
- }
- }
- System.out.println();
- System.out.println(str);
- str = “make in \\u4e2d\\u56fd”;
- String v = “‘”+str+“‘”;
- System.out.println(v);
- try {
- System.out.println(new JSONTokener(v).nextValue().toString());
- } catch (JSONException e) {
- e.printStackTrace();
- }
- }
本身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