Eine gesamte Datei mit einer Zeile in einen String einlesen.
Code-Vergleich
✕ Java 8
StringBuilder sb = new StringBuilder();
try (BufferedReader br =
new BufferedReader(
new FileReader("data.txt"))) {
String line;
while ((line = br.readLine()) != null)
sb.append(line).append("\n");
}
String content = sb.toString();
✓ Java 11+
String content =
Files.readString(Path.of("data.txt"));
Problem mit diesem Code entdeckt? Sag uns Bescheid.
Warum der moderne Weg gewinnt
Eine Zeile
8 Zeilen BufferedReader-Boilerplate ersetzen.
Automatische Bereinigung
Das Datei-Handle wird automatisch geschlossen.
UTF-8 als Standard
Standardmäßig korrekte Kodierung – keine Zeichensatz-Verwirrung.
Alter Ansatz
BufferedReader
Moderner Ansatz
Files.readString()
Seit JDK
11
Schwierigkeitsgrad
Einsteiger
JDK-Unterstützung
Dateien lesen
Verfügbar
Seit JDK 11 allgemein verfügbar (Sept. 2018)
Wie es funktioniert
Files.readString() liest den gesamten Inhalt einer Datei in einen String. Es übernimmt die Zeichenkodierung (standardmäßig UTF-8) und die Ressourcenbereinigung. Für große Dateien empfiehlt sich Files.lines() für lazy Streaming.
Zugehörige Dokumentation