Text in eine Datei schreiben (Java): Unterschied zwischen den Versionen

Aus Byte-Welt Wiki
Zur Navigation springenZur Suche springen
(Die Seite wurde neu angelegt: „Kategorie:Java Will man Text in eine Datei schreiben und diese speichern, benötigt man dazu ein Objekt der Klasse {{JAPI|FileWriter}}. Um die Effi…“)
 
K
Zeile 1: Zeile 1:
 
[[Kategorie:Java]]
 
[[Kategorie:Java]]
Will man Text in eine Datei schreiben und diese speichern, benötigt man dazu ein [[Objekt]] der [[Klasse]] {{JAPI|FileWriter}}. Um die Effizienz von FileWriter zu erhöhen, sollte man ihn stets in einem {{JAPI|BufferedWriter}} übergeben.
+
Will man Text in eine neue Datei schreiben und diese speichern, benötigt man dazu ein [[Objekt]] der [[Klasse]] {{JAPI|FileWriter}}. Um die Effizienz von FileWriter zu erhöhen, sollte man ihn stets einem {{JAPI|BufferedWriter}} übergeben.
Die Konstruktoren von FileWriter erwarten als Eingabe ein gültiges {{JAPI|File}}-Objekt oder einen Dateinamen bzw. Dateipfad der Zieldatei.
+
Die [[Konstruktor (Java)|Konstruktoren]] von FileWriter erwarten als Eingabe ein gültiges {{JAPI|File}}-Objekt oder einen Dateinamen bzw. Dateipfad der Zieldatei.
  
 +
Da dabei einiges schief gehen kann, müssen einige Anweisungen in try-catch-Blöcke eingebettet werden, um mögliche Ausnahmefehler ([[Was ist eine Exception|Exceptions]]) abzufangen.
 +
 +
<syntaxhighlight lang="java">
 +
File file = new File("Ausgabe.txt"); //Datei, in die geschrieben werden soll
 +
try {
 +
  BufferedWriter writer = new BufferedWriter(new FileWriter(file)); //Erzeugen eines effizienten Writers für Textdateien
 +
  writer.write("Byte-Welt");
 +
  writer.newLine();
 +
  writer.write("Byte-Welt-Wiki");
 +
  writer.newLine();
 +
  writer.write("Java-Blog-Buch");
 +
  writer.newLine();
 +
  writer.write("Byte-Welt-Chat");
 +
}
 +
catch(IOException ioe) {
 +
  System.err.println(ioe);
 +
}
 +
</syntaxhighlight>
 +
 +
=Logdatei schreiben=
 +
Wenn der in einer Datei enthaltene Text nicht überschrieben, sondern neuer Text ans Ende eines bestehenden Textes angehängt werden soll, ist nur der passende {{JAPI|File}}-Konstruktor zu wählen.
 
<syntaxhighlight lang="java">
 
<syntaxhighlight lang="java">
 +
File file = new File("Logfile.txt", true); //Text wird ans Dateiende angehangen
 +
</syntaxhighlight>

Version vom 26. November 2018, 15:53 Uhr

Will man Text in eine neue Datei schreiben und diese speichern, benötigt man dazu ein Objekt der Klasse FileWriter. Um die Effizienz von FileWriter zu erhöhen, sollte man ihn stets einem BufferedWriter übergeben. Die Konstruktoren von FileWriter erwarten als Eingabe ein gültiges File-Objekt oder einen Dateinamen bzw. Dateipfad der Zieldatei.

Da dabei einiges schief gehen kann, müssen einige Anweisungen in try-catch-Blöcke eingebettet werden, um mögliche Ausnahmefehler (Exceptions) abzufangen.

File file = new File("Ausgabe.txt"); //Datei, in die geschrieben werden soll
try {
   BufferedWriter writer = new BufferedWriter(new FileWriter(file)); //Erzeugen eines effizienten Writers für Textdateien
   writer.write("Byte-Welt");
   writer.newLine();
   writer.write("Byte-Welt-Wiki");
   writer.newLine();
   writer.write("Java-Blog-Buch");
   writer.newLine();
   writer.write("Byte-Welt-Chat");
}
catch(IOException ioe) {
   System.err.println(ioe);
}

Logdatei schreiben

Wenn der in einer Datei enthaltene Text nicht überschrieben, sondern neuer Text ans Ende eines bestehenden Textes angehängt werden soll, ist nur der passende File-Konstruktor zu wählen.

File file = new File("Logfile.txt", true); //Text wird ans Dateiende angehangen