Чтение текстового файла

Kotlin:
Чтение текстового файла

Как это сделать:

В Kotlin вы можете легко прочитать текстовый файл, используя функцию readLines() или блок useLines.

import java.io.File

fun main() {
    // Чтение всех строк сразу
    val lines = File("example.txt").readLines()
    lines.forEach { line ->
        println(line)
    }

    // Более эффективно для больших файлов
    File("example.txt").useLines { lines ->
        lines.forEach { line ->
            println(line)
        }
    }
}

Пример вывода (предполагая, что example.txt содержит две строки с “Hello” и “World”):

Hello
World

Подробнее

Исторически сложилось так, что чтение файлов в Java могло быть многословным и неуклюжим. С Kotlin стандартная библиотека предоставляет удобные расширения, чтобы сделать чтение файлов проще.

Есть альтернативы для чтения файлов в Kotlin:

  1. readText() читает весь контент файла в String.
  2. bufferedReader() предоставляет BufferedReader, который позволяет решать более сложные задачи, например, чтение огромных файлов без излишнего потребления памяти.

С точки зрения реализации, когда вы используете useLines, это обеспечивает закрытие файла после выполнения, предотвращая потенциальные утечки памяти. Это функциональный подход, который рекомендуется в Kotlin для эффективного управления ресурсами.

См. также