本文来自CSDN博客:http://blog.csdn.net/xyk0830/archive/2007/11/06/1869638.aspx
native2ascii.exe -[options] [inputfile [outputfile]]
其中:
-[options]表示命令开关,有两个选项可供选择:
-reverse:用Latin-1或Unicode编码把文件转换成本地编码格式
-encoding encoding_name:要把文件转换的目标编码
inputfile:表示输入文件全名。
outputfile:输出文件名。如果缺少此参数,将输出到控
D:/jdk1.5.0_06/bin>native2ascii.exe -encoding utf8 abc.txt bcd.txt
D:/jdk1.5.0_06/bin>native2ascii.exe -encoding GBK abc.txt bcd.txt
java 自带的一个native2ascii.exe是一个很好的转码工具,在bin目录下。如果你的properties中有汉字,需要转成unicode . 则把含有汉字的properties拷贝到bin 目录下, 然后在cmd里面进入bin目录,输入:native2ascii -encoding utf-8 Language-ext_zh_CN.properties.native Language-ext_zh_CN.properties就ok了。Language-ext_zh_CN.properties是转码后的文件。 但每次要把properties文件拷来拷去挺麻烦的,索性写了个java文件调用native2ascii.exe:
import java.io.IOException;
public class Native2ascii {
private static final String java_path = "E://jdk1.5.0_12";
private static final String target_file = "E://Projects//liferay//extproject//ext-impl//classes//content//Language-ext_zh_CN.properties.native";
private static final String result_file = "E://Projects//liferay//extproject//ext-impl//classes//content//Language-ext_zh_CN.properties";
private static final String encoding = "utf-8";
public static void native2ascii()
{
try {
System.out.println("Begin to execute...");
Runtime.getRuntime().exec(java_path+"//bin//native2ascii.exe -encoding "+encoding+" "+target_file+" "+result_file);
System.out.println("End");
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
public static void main(String arg[]){
native2ascii();
}
}