实现编码转换功能的方法:
1. 编译java 文件。source 如下: (需要本地安装jdk 1.4)
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.nio.ByteBuffer;
import java.nio.channels.FileChannel;
import java.nio.charset.Charset;
import java.nio.CharBuffer;
public class CC
{
public static void main(String[] args) throws Exception
{
FileInputStream fi = new FileInputStream(args[0]);
int length = fi.available();
FileChannel fc = fi.getChannel();
ByteBuffer buff = ByteBuffer.allocate(length);
fc.read(buff);
buff.flip();
fc.close();
fi.close();
// Decode using this system's default Charset:
buff.rewind();
//String encoding = System.getProperty("file.encoding");
//System.out.println(
// "Decoded using "
// + encoding
// + ": "
// + Charset.forName(encoding).decode(buff));
//
// Or, we could encode with something that will print:
Charset decoder = Charset.forName(args[1]);
Charset encoder = Charset.forName(args[2]);
CharBuffer cb = decoder.decode(buff);
ByteBuffer buff2 = encoder.encode(cb);
FileOutputStream fo = new FileOutputStream(args[0]);
fc = fo.getChannel();
//String fileContent = new String(buff2.array());
//fc.write(ByteBuffer.wrap(fileContent.getBytes(args[1])));
fc.write(buff2);
fc.close();
fo.close();
}
}
2. 将CC.java 放在 一个目录( x:\cc) 下。
3. cd x:\cc; javac CC.java; 生成 CC.class 文件。
4. 打开ultraedit(最好 版本10以上)
5. advanced -> tool configuration.
6. 按照下图配置:
7. 填写完后,click insert, SJIS->UTF-8 就会出现在最下面的文本框中。
8. 实现 UTF-8->SJIS 等转换。
9. click OK, 这时在advanced 菜单下会看见如下工具:
10. 打开下载到本地的java文件后, click EUC-JP->SJIS就可以将
java 文件转换为sjis 编码,ultraedit 中就可以看到正常的日文字符。
11. 对于中文的gb2312, big5 和utf-8 之间的转换,也可以如上进行。
12. 按照如上的方式,也可以实现editplus 中编码转换功能。
本文地址:http://com.8s8s.com/it/it15331.htm