2009-08-03 16 views
26

Ich verwende derzeit FileWriter zum Erstellen und Schreiben in eine Datei. Gibt es eine Möglichkeit, dass ich jedes Mal in dieselbe Datei schreiben kann, ohne den Inhalt dort zu löschen?Java FileWriter mit Append-Modus

fout = new FileWriter(
    "Distribution_" + Double.toString(_lowerBound) + "_" + Double.toString(_highBound) + ".txt"); 
    fileout = new PrintWriter(fout,true); 
fileout.print(now.getTime().toString() + ", " + weight + ","+ count +"\n"); 
    fileout.close(); 

Antwort

78

Pass true als zweites Argument FileWriter einzuschalten "append" -Modus.

fout = new FileWriter("filename.txt", true); 

FileWriter usage reference

+0

java doc ist umgezogen –

+0

Funktioniert noch im Jahr 2015 –

7

Vom Javadoc, können Sie den Konstruktor verwenden, um festzulegen, ob Sie anhängen wollen oder nicht.

public Filewriter (File Datei, boolean append) throws IOException

Konstruiert ein Filewriter Objekt ein File-Objekt angegeben. Wenn das zweite Argument wahr ist, dann werden die Bytes an das Ende der Datei geschrieben, anstatt als der Anfang.

+0

javadoc ist umgezogen –

5

Sie können die Filewriter öffnen in Zufügen-Modus durch true als zweiter Parameter übergeben:

fout = new FileWriter("Distribution_" + ... + ".txt", true); 
3

Sie können als zweiter Parameter an den Konstruktor von Filewriter übergeben true, um den Schreiber anzuweisen, die Daten anzuhängen, statt das Umschreiben der Datei.

Zum Beispiel

fout = new Filewriter ( "Distribution_" + Double.toString (lowerbound) + "" + Double.toString (_highBound) + ".txt" wahre);

Ich hoffe, dies würde Ihr Problem lösen.

Verwandte Themen