实现编码转换功能的方法:
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 中编码转换功能。 
|