Kotlin:
Textdatei einlesen
How to:
So liest du eine Textdatei in Kotlin – einfach und schmerzlos:
import java.io.File
fun main() {
val content = File("meineDatei.txt").readText(Charsets.UTF_8)
println(content)
}Ergebnis:
Hallo, das ist der Inhalt der Textdatei!Deep Dive
Der Umgang mit Dateien in Kotlin beruht auf Java’s I/O-API. java.io.File ist seit Java 1.0 dabei – ein Oldtimer. readText() ist eine bequeme Methode, die erst mit Kotlin kam. Sie liest den ganzen Inhalt auf einmal, super für kleine Dateien, aber Vorsicht bei großen – Speicherprobleme drohen.
Alternativ kannst du mit readLines() jede Zeile in eine Liste lesen, das hält den Speicherbedarf klein:
val lines = File("meineDatei.txt").readLines()
lines.forEach { println(it) }Was, wenn dein Datei riesig ist? bufferedReader() zur Hilfe:
File("großeDatei.txt").bufferedReader().use { reader ->
var line = reader.readLine()
while(line != null) {
println(line)
line = reader.readLine()
}
}Hier haben wir einen BufferedReader, der Stück für Stück liest, statt alles auf einmal in den RAM zu hauen.
Das Wichtigste? Fehlerbehandlung nicht vergessen. Schau Dir try-catch-Blöcke an, um den Umgang mit fehlenden Dateien oder Zugriffsproblemen elegant zu handhaben.
See Also
- Offizielles Kotlin Forum für Fragen: Kotlin Discussions