native2ascii用法解析
程序员文章站
2023-11-21 17:00:22
native2ascii用法解析...
native2ascii是sun java sdk提供的一个工具。用来将别的文本类文件(比如*.txt,*.ini,*.properties,*.java等等)编码转为unicode编码。为什么要进行转码,原因在于程序的国际化。
用法:native2ascii [-reverse] [-encoding 编码] [输入文件 [输出文件]]
-[options]:表示命令开关,有两个选项可供选择
-reverse:将unicode编码转为本地或者指定编码,不指定编码情况下,将转为本地编码。
-encoding encoding_name:转换为指定编码,encoding_name为编码名称。
[inputfile [outputfile]]
inputfile:表示输入文件全名。
outputfile:输出文件名。如果缺少此参数,将输出到控制台
native2ascii命令的用法:
只有一种类型编码,可以说文本文件编码和文本内容编码指的是同一个意思。
建议理解成文本文件编码(看第四).
结论:
1.这里说的16进制的字符是本地编码的字符的16进制字符表示。
2.utf-8编码(有本地字符)和ansi编码(有本地字符)的文件转成ansi编码的本地字符的16进制字符表示是一样的。
3.utf-8编码(有本地字符)的文件要转成ansi编码的(本地字符)的文件,要先转成ansi编码的16进制字符文件,之后再转成ansi编码的本地字符的文件。
4.前提是这个16进制的字符必须代表一个本地字符.
疑问:难道没有转换utf-8编码的本地字符文件转为utf-8编码的16进制字符表示的方法?!它和ansi编码表示的
16进制一样吗?
一、把ansi编码的本地字符文件转成ansi编码的16进制文件再转回来。
两步走:
1.native2ascii -encoding gbk [ansi编码文件,显示ansi本地字符] [ansi编码文件,即显示ansi本地编码字符的十六进制字符]
2.native2ascii -reverse [ansi编码文件,即显示ansi本地编码字符的十六进制字符] [ansi编码文件,即ansi本地字符]
二、把ansi编码的本地字符(或16进制字符)文件转成utf-8编码的本地字符文件。
>native2ascii -reverse -encoding utf-8 [ansi编码文件,即ansi本地字符] [utf-8编码文件]
>native2ascii -reverse -encoding utf-8 [ansi编码文件,即显示ansi本地编码字符的十六进制字符] [utf-8编码文件]
三、把utf编码的文件(显示本地字符),转成ansi编码的文件。
两步走:
1.先转成ansi编码的十六进制字符文件
native2ascii -encoding utf-8 [utf-8编码文件] [ansi编码文件,即显示ansi本地编码字符的十六进制字符]
2.再转成ansi编码的本地字符文件。
native2ascii -reverse [ansi编码文件,即显示ansi本地编码字符的十六进制字符] [ansi编码文件,即ansi本地字符]
四、如果是utf编码的文件,有本地字符的16进制的话,想转成ansi编码的本地字符表示。
用native2ascii的话是不行的.
只能用记事本把文件编码类型另存为ansi编码的16进制的文件,之后执行第一步.
这个太麻烦了,能不用时就不要用
用法:native2ascii [-reverse] [-encoding 编码] [输入文件 [输出文件]]
-[options]:表示命令开关,有两个选项可供选择
-reverse:将unicode编码转为本地或者指定编码,不指定编码情况下,将转为本地编码。
-encoding encoding_name:转换为指定编码,encoding_name为编码名称。
[inputfile [outputfile]]
inputfile:表示输入文件全名。
outputfile:输出文件名。如果缺少此参数,将输出到控制台
native2ascii命令的用法:
只有一种类型编码,可以说文本文件编码和文本内容编码指的是同一个意思。
建议理解成文本文件编码(看第四).
结论:
1.这里说的16进制的字符是本地编码的字符的16进制字符表示。
2.utf-8编码(有本地字符)和ansi编码(有本地字符)的文件转成ansi编码的本地字符的16进制字符表示是一样的。
3.utf-8编码(有本地字符)的文件要转成ansi编码的(本地字符)的文件,要先转成ansi编码的16进制字符文件,之后再转成ansi编码的本地字符的文件。
4.前提是这个16进制的字符必须代表一个本地字符.
疑问:难道没有转换utf-8编码的本地字符文件转为utf-8编码的16进制字符表示的方法?!它和ansi编码表示的
16进制一样吗?
一、把ansi编码的本地字符文件转成ansi编码的16进制文件再转回来。
两步走:
1.native2ascii -encoding gbk [ansi编码文件,显示ansi本地字符] [ansi编码文件,即显示ansi本地编码字符的十六进制字符]
2.native2ascii -reverse [ansi编码文件,即显示ansi本地编码字符的十六进制字符] [ansi编码文件,即ansi本地字符]
二、把ansi编码的本地字符(或16进制字符)文件转成utf-8编码的本地字符文件。
>native2ascii -reverse -encoding utf-8 [ansi编码文件,即ansi本地字符] [utf-8编码文件]
>native2ascii -reverse -encoding utf-8 [ansi编码文件,即显示ansi本地编码字符的十六进制字符] [utf-8编码文件]
三、把utf编码的文件(显示本地字符),转成ansi编码的文件。
两步走:
1.先转成ansi编码的十六进制字符文件
native2ascii -encoding utf-8 [utf-8编码文件] [ansi编码文件,即显示ansi本地编码字符的十六进制字符]
2.再转成ansi编码的本地字符文件。
native2ascii -reverse [ansi编码文件,即显示ansi本地编码字符的十六进制字符] [ansi编码文件,即ansi本地字符]
四、如果是utf编码的文件,有本地字符的16进制的话,想转成ansi编码的本地字符表示。
用native2ascii的话是不行的.
只能用记事本把文件编码类型另存为ansi编码的16进制的文件,之后执行第一步.
这个太麻烦了,能不用时就不要用
上一篇: 实现ASP程序执行时间统计类的代码
下一篇: 凯立德的T系列与C系列的区别及版本号说明
推荐阅读
-
Python3.4学习笔记之常用操作符,条件分支和循环用法示例
-
PHP超级全局变量【$GLOBALS,$_SERVER,$_REQUEST等】用法实例分析
-
C#中String StringBuilder StringBuffer类的用法
-
Laravel框架Eloquent ORM新增数据、自定义时间戳及批量赋值用法详解
-
深入探讨:oracle中row_number() over()分析函数用法
-
oracle case when 语句的用法详解
-
ASP.NET C#中Application的用法教程
-
mysql 分页优化解析
-
SQL中distinct 和 row_number() over() 的区别及用法
-
Laravel5.1框架自带权限控制系统 ACL用法分析