posts - 262,  comments - 221,  trackbacks - 0

【1】native2ascii命令的语法:

native2ascii -[options] [inputfile [outputfile]]


【2】native2ascii命令的功能:

native2ascii命令可以帮助我们做两件事:

 ①把文件的字符转换成unicode字符输出到控制台或文件
 ②把文件中的unicode字符转换成默认或指定编码的字符

【3】native2ascii命令的选项使用:

native2ascii命令有两个选项可以配合使用
 ①-reverse:将Unicode编码转为本地或者指定编码,不指定编码情况下,将转为本地编码
 ②-encoding encoding_name:转换为指定编码,encoding_name为编码名称

来看下面的例子:

C:\Documents and Settings\Administrator>type E:\Temp\gbk_content.txt
abc123中文

C:
\Documents and Settings\Administrator>native2ascii E:\Temp\gbk_content.txt
abc123
\u4e2d\u6587


可以看到该命令对于英文字符,数字不会转换而是直接输出,而对于每个中文字符则转换成以\u开头的4个16进制数字。其中4e2d是"中"字,6587是"文"字。我们并没有指定-encoding encoding_name,那么默认将转换成unicode,并将结果输出到控制台。

下面我们来看看如何把unicode字符转换成肉眼可以识别的字符串:

C:\Documents and Settings\Administrator>native2ascii -reverse -encoding GBK E:\Temp\unicode_output.txt
abc123中文

C:
\Documents and Settings\Administrator>native2ascii -reverse E:\Temp\unicode_output.txt
abc123中文


通常情况下,如果要进行字符的逆转换,-encoding encoding_name这个参数都会配合-reverse出现。在上面的例子中因为本地系统是中文操作系统,所以即便没有指定-encoding也可以正确地从unicode ---》GBK。如果是在英文平台下由于默认字符集是ISO-8859-1,那么这个时候如果不指定则转换出来的将是?了。



-------------------------------------------------------------
生活就像打牌,不是要抓一手好牌,而是要尽力打好一手烂牌。
posted on 2010-02-23 18:41 Paul Lin 阅读(700) 评论(0)  编辑  收藏 所属分类: J2SE

只有注册用户登录后才能发表评论。


网站导航:
 
<2010年2月>
31123456
78910111213
14151617181920
21222324252627
28123456
78910111213

常用链接

留言簿(19)

随笔分类

随笔档案

BlogJava热点博客

好友博客

搜索

  •  

最新评论

阅读排行榜

评论排行榜