原文地址:http://niewj.iteye.com/blog/1068667
2011-1-6
1.找到jdk的bin目录:
进入到jdk的bin之下,有一个native2ascii.exe,就是它!
- “运行”-“cmd”-“cd %JAVA_HOME%/bin”
2.在我的目录“C:/nie/”之下有一个cn.txt,内容如下:
- name=小兔子
- gender=女
- age=20
- birth=199104
- province=北京
- city=北京
- hobby=运动看书
- #-------------------
- ecol.100=不详
- ecol.101=无格
- ecol.102=无格或有格
- ecol.103=红格
- ecol.104=红格或无格
- ecol.105=红栏格
- ecol.106=红边栏
- ecol.107=绿格
- ecol.108=蓝格
- ecol.109=蓝格或黑格
- ecol.110=蓝格或无格
- ecol.111=黑格
- ecol.112=黑格或无格
- ecol.113=黑格或蓝格或红格
- ecol.114=黄格
- ecol.115=紫格
- ecol.116=朱格
- ecol.117=方格
- ecol.118=小方格
- ecol.119=红方格
- ecol.120=横格
- ecol.121=兰格
- ecol.122=米格
- ecol.123=白格
- ecol.124=直格
- ecol.125=竹简形行格
- ecol.126=红格或黑格
- ecol.127=兰格或红格
- ecol.128=墨栏
- ecol.129=乌丝栏
转换成unicode:
- native2ascii -encoding GBK c:\nie\cn.txt c:\nie\cn_gbk.txt //GB2312也可以
- name=\u5c0f\u5154\u5b50
- gender=\u5973
- age=20
- birth=199104
- province=\u5317\u4eac
- city=\u5317\u4eac
- hobby=\u8fd0\u52a8\u770b\u4e66
- #-------------------
- ecol.100=\u4e0d\u8be6
- ecol.101=\u65e0\u683c
- ecol.102=\u65e0\u683c\u6216\u6709\u683c
- ecol.103=\u7ea2\u683c
- ecol.104=\u7ea2\u683c\u6216\u65e0\u683c
- ecol.105=\u7ea2\u680f\u683c
- ecol.106=\u7ea2\u8fb9\u680f
- ecol.107=\u7eff\u683c
- ecol.108=\u84dd\u683c
- ecol.109=\u84dd\u683c\u6216\u9ed1\u683c
- ecol.110=\u84dd\u683c\u6216\u65e0\u683c
- ecol.111=\u9ed1\u683c
- ecol.112=\u9ed1\u683c\u6216\u65e0\u683c
- ecol.113=\u9ed1\u683c\u6216\u84dd\u683c\u6216\u7ea2\u683c
- ecol.114=\u9ec4\u683c
- ecol.115=\u7d2b\u683c
- ecol.116=\u6731\u683c
- ecol.117=\u65b9\u683c
- ecol.118=\u5c0f\u65b9\u683c
- ecol.119=\u7ea2\u65b9\u683c
- ecol.120=\u6a2a\u683c
- ecol.121=\u5170\u683c
- ecol.122=\u7c73\u683c
- ecol.123=\u767d\u683c
- ecol.124=\u76f4\u683c
- ecol.125=\u7af9\u7b80\u5f62\u884c\u683c
- ecol.126=\u7ea2\u683c\u6216\u9ed1\u683c
- ecol.127=\u5170\u683c\u6216\u7ea2\u683c
- ecol.128=\u58a8\u680f
- ecol.129=\u4e4c\u4e1d\u680f
而且这两种生成的编码是相同的,因为GBK兼容GB2312;
3.现在反过来按照GBK编码再转回中文本地:
- native2ascii -reverse -encoding GBK c:\nie\cn_gbk.txt c:\nie\gbk_back.txt
或者:
- native2ascii -reverse c:\nie\cn_gbk.txt c:\nie\gbk_back.txt
都会产生转换转换结果如上面的中文!
“GBK”、“GB2312”、“8859_1”可以互转;
但是/unicode/UTF-8转换之后不能转回中文;
--------------------------------------风骚的分割线-------------------------------------
4.小结:
如果要使用本地中文转换成unicode编码:
使用参数:native2ascii -encoding GBK(或者GB2312);
如果要使用unicode再转换回来生成我们看的懂的中文:
使用参数:native2ascii -reverse -encoding GBK(或者GB2312);也可以省掉-encoding GBK(或者GB2312),只用-reverse就可以。
5.备注:如果是要转换成8859_1的话,再翻转中文的时候就必须加上-encoding 8859_1才可以回转成中文;其他的UTF-8则回转不成功,还没有弄明白原因。