Wie liest man in Java eine Textdatei ein? Wie schreibt man in eine Textdatei?

Zum Lesen und Schreiben von Textdateien kann man auf das Paket java.io der Java-Klassenbibliothek zurückgreifen. Alternativ dazu kann man die Klassen In und Out aus “Sprechen Sie Java?” verwenden.

Beispiel für die Verwendung des Pakets java.io der Java-Klassenbibliothek:

import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;

public class FileIODemo {
    
    public static void main(String[] args) throws IOException {
        File f = new File("MyFile.txt");
        BufferedWriter bw = new BufferedWriter(new FileWriter(f));
        for (int i = 0; i < 10; i++) {
            bw.write("Hello World!\n");
        }
        bw.close();
        
        BufferedReader br = new BufferedReader(new FileReader(f));
        while(br.ready()) {
            System.out.println(br.readLine());
        }
        br.close();
    }
}

Falls die Datei MyFile.txt noch nicht vorhanden ist, wird sie in Zeile 12 angelegt und geöffnet.
Falls die Datei MyFile.txt bereits vorhanden ist, wird sie zum Überschreiben geöffnet.
In Zeile 14 wird mit write() zeilenweise in die Datei geschrieben.
Zum Beenden des Schreibvorgangs wird in Zeile 16 die Datei geschlossen.

In Zeile 18 wird die Datei MyFile.txt zum Lesen geöffnet.
In Zeile 19 wird die Schleifenbedingung formuliert. Die Schleife wird ausgeführt, bis alle Zeichen gelesen sind.
Mit der Methode readLine() wird die Datei zeilenweise gelesen.
In Zeile 22 wird die Datei geschlossen.

Beispiel für die Verwendung der Klassen In und Out:

    Out.open("MyFile.txt");
    for (int i = 0; i < 10; i++) {
        Out.println("Hello World!");
    }
    Out.close();

    In.open("MyFile.txt");
    String s = In.readFile();
    In.close();

    System.out.println(s);

Falls die Datei MyFile.txt noch nicht vorhanden ist, wird sie in Zeile 1 mit Out.open() angelegt und geöffnet.
Falls die Datei MyFile.txt bereits vorhanden ist, wird sie mit Out.open() zum Überschreiben geöffnet.
In Zeile 3 wird mit Out.println() zeilenweise in die Datei geschrieben.
Zum Beenden des Schreibvorgangs wird in Zeile 5 die Datei geschlossen.

In Zeile 7 wird die Datei MyFile.txt zum Lesen geöffnet.
Mit der Methode In.readFile() wird die gesamte Datei in den String s eingelesen.
In Zeile 9 wird die Datei geschlossen.