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 | + | 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