テキストファイルの読み込み文字化けしの問題解決策


直接問題を解いて、もし私達がローカルディスクの上で1つのテキストファイル(.txt/.lrc)を読み込むならば、通常直接FileReaderあるいはDataInputStreamなどを使ってテキストを読み取って表示して文字が文字のストリームの過程の中でコードの指定の誤りを指定することに変換することによって(主に入力したバイトのストリームによって)文字の現象が現れます.
ここでは、InputStreamReaderクラスで文字ストリームの符号化方法を指定し、BufferedReaderにカプセル化して複数の文字を読み込むことができます.
 
  public class NewClass {
    public static void main(String[] args) throws FileNotFoundException, IOException {
        InputStream input = new FileInputStream(new File("C:\\Program Files\\Apache Software Foundation\\Tomcat 6.0\\webapps\\ROOT\\mp3\\Honey.lrc"));
        InputStreamReader reader = new InputStreamReader(input,"gbk");
        BufferedReader br = new BufferedReader(reader);
      
        String line = null;
        while((line=br.readLine())!=null){
            System.out.println(line);
        }

    }

 
ここで、InputStreamReader=new InputStreamReader(input,"gbk");文字ストリームの符号化方法を指定し、ここでは中国語の国標符号化を指定します.問題は解決した!