2016-05-07 14 views
0

BufferedWriterとBufferedReaderの仕組みを知っている人には質問があります。既に存在するが、Javaが提供している最初の行の下にText行を追加したい私はNullPointerExceptionです。BufferedWriterを停止して既存のテキスト行を上書きする

String myClass = "none"; 
File ff = new File("src/Resources/Saves/test.txt"); 
try{ 
    FileWriter fw = new FileWriter(ff); 
    BufferedWriter bw = new BufferedWriter(fw); 
    FileReader fr = new FileReader(ff); 
    BufferedReader br = new BufferedReader(fr); 
    bw.write(br.readLine()); //NullPointerException is here 
    bw.newLine(); 
    bw.write(myClass); 
    bw.flush(); 
    bw.close(); 
    br.close(); 
} catch(IOException ecc){ 
    ecc.printStackTrace(); 
} 

理論的には、それは、テキストの最初の行を再書き込み新しい行を開始し、私の文字列「MyClassの」を書く必要があります。

は、ここでは、コードです。

答えて

3

あなたはそれに追加する(とにかく動作しないであろう)自体の上にファイルをコピーする必要はありません、とのことができますFileWriter

new FileWriter("File name",true); 
+0

ああ働いた!どうもありがとう :) – Toreole

1

の第二のコンストラクタを使用することができますtry-with-resourceを使用してください。

String myClass = "none"; 
File ff = new File("src/Resources/Saves/test.txt"); 
try (PrintWriter pw = new PrintWriter(ff)) { 
    pw.println(myClass); 
} 

あなたが何かをする予定がない限り、私は例外をキャッチしません。

関連する問題