我现在用的是日文操作系统,我下了一个软件,有一个README文件,内容是中文的,但是打开是乱码,我写了一个编码转换的软件,但结果还是乱码。请大家帮我看一下对不对。import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileInputStream;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
public class Gb2312EncodeingOutput {

public static void main(String[] args) throws Exception{
File file = new File("readme.txt");
FileInputStream is = new FileInputStream(file); 
InputStreamReader isr = new InputStreamReader(is,"gb2312");
BufferedReader br = new BufferedReader(isr);
StringBuffer sb = new StringBuffer();
String storeFileLine = null;
while (!((storeFileLine = br.readLine()) == null)) {
sb.append(storeFileLine = br.readLine());
}
OutputStreamWriter osw = new OutputStreamWriter(System.out,"gb2312");
BufferedWriter bw = new BufferedWriter(osw);
bw.write(sb.toString());
bw.flush();
}
}

解决方案 »

  1.   

    晕死,楼主真强,还用自己写软件~~~~~~~~~
    请用Microsoft AppLocale~~~~~~~~~
      

  2.   

    日文一般用的是JIS编码,如果你只是为了看readme.txt文件,建议你用EmEditor文本编辑器,它可以多种编码转换看~
      

  3.   

    中文的Readme文件, 但不一定就是使用GB2312编码的啊你先用编辑器打开看一下文件的编码, 有可能是UTF-8, 然后再修改你的程序吧
      

  4.   

    我看了那个文本文件,是ANSI编码,但我如何才能知道到底是哪种(如:ISO-8859-1等西欧编码方式)具体的编码方式呢?
    谢谢大家了。
      

  5.   

    中文简体编码大致就2系,gbk一系,unicode一系,把这些编码都试下,不就知道了
      

  6.   

    哈哈,终于搞定了,我也是日文系统,写了个方法,你试一下~~~~~~~
        public void readFile() {
            try {
                InputStreamReader reader = new InputStreamReader(new FileInputStream("readme.txt"), "gb2312");
                OutputStreamWriter writer = new OutputStreamWriter(new FileOutputStream("test.txt"), "utf8");
                BufferedReader br = new BufferedReader(reader);
                String record = new String();
                int reccount = 0;
                while ((record = br.readLine()) != null) {
                    reccount++;
                    writer.write(record);
                    System.out.println(reccount + ": " + record);
                }
                br.close();
                writer.close();
            } catch (IOException e) {
                System.out.println("has not found test.txt file !");
            }
        }