Чтение и запись в файлы в Kotlin

НАВИГАЦИЯ ПО СТРАНИЦЕ

Запись в файл Чтение данных из файла

В Kotlin для чтения и записи в файлы часто используются классы File и FileWriter из стандартной библиотеки. Рассмотрим примеры использования для записи и чтения данных из файла.

Запись в файл с использованием FileWriter

import java.io.File
import java.io.FileWriter

fun writeToFile(fileName: String, content: String) {
    try {
        val file = File(fileName)
        val writer = FileWriter(file)

        writer.write(content)

        writer.close()
        println("Запись в файл успешно завершена.")
    } catch (e: Exception) {
        println("Произошла ошибка при записи в файл: ${e.message}")
    }
}

val fileName = "example.txt"
val contentToWrite = "Привет, мир!\nЭто пример записи в файл в Kotlin."

writeToFile(fileName, contentToWrite)

Чтение данных из файла

import java.io.File
import java.io.BufferedReader
import java.io.FileReader

fun readFromFile(fileName: String): String {
    val file = File(fileName)
    val content = StringBuilder()

    try {
        val reader = BufferedReader(FileReader(file))
        var line: String?

        while (reader.readLine().also { line = it } != null) {
            content.append(line).append("\n")
        }

        reader.close()
    } catch (e: Exception) {
        println("Произошла ошибка при чтении файла: ${e.message}")
    }

    return content.toString()
}

val readContent = readFromFile(fileName)
println("Содержимое файла:\n$readContent")

В этих примерах, writeToFile принимает имя файла и строку, которую нужно записать в файл. Функция создает объект File и FileWriter, записывает содержимое в файл, и закрывает файл.

Функция readFromFile принимает имя файла и возвращает строку, содержащую все строки из файла. Она использует BufferedReader и FileReader для эффективного чтения данных из файла.

Обратите внимание, что операции с файлами могут вызывать исключения, поэтому важно обрабатывать их с помощью блока try-catch.