3

既に存在するファイルに書き込もうとしています。フォーラムで見た限りでは、このコードは古いファイルを書き換える必要がありますが、書き換える代わりに、ファイル名を [] ブラケットに入れて新しいファイルを作成します。何か案が?

 try {
   File file = new File("/home/erik/glassfish3/" + selectedMss + ".ini");
   BufferedWriter output = new BufferedWriter(new FileWriter(file));
   for (String newline : content) {
     output.write(newline + "\n");
   }
   output.close();
 } catch (IOException e) {
   e.printStackTrace();
 }
4

2 に答える 2

5

このFileWriterクラスには、ライターが既存のファイルの末尾に新しいコンテンツを追加する追加モードを使用する必要があるかどうかを指定する 2 番目のブール値引数を受け入れるコンストラクターがあります。

finallyライターをブロックで閉じることもお勧めします。

ドキュメンテーション

BufferedWriter output;
try {                
    File file = new File("/home/erik/glassfish3/"+selectedMss+".ini");

    //Providing true for second argument specifies it should be appended. 
    output = new BufferedWriter(new FileWriter(file,true));

    for(String newline: content){
        output.write(newline+"\n");      
    }

} catch ( IOException e ) {
       e.printStackTrace();
}finally{
  output.close();
}
于 2013-07-09T08:52:10.700 に答える