Функция writeLines
Функция writeLines записывает коллекцию строк
в файл, заменяя его предыдущее содержимое.
Каждый элемент коллекции записывается как отдельная строка.
По умолчанию используется кодировка UTF-8.
Импорт
import java.io.File
Синтаксис
fun File.writeLines(
lines: Iterable<String>,
charset: Charset = Charsets.UTF_8
)
fun File.writeLines(
lines: Sequence<String>,
charset: Charset = Charsets.UTF_8
)
Пример
Запишем список строк в файл data.txt:
val lines = listOf("line1", "line2", "line3")
val file = File("data.txt")
file.writeLines(lines)
Содержимое файла после выполнения:
line1
line2
line3
Пример
Запишем последовательность строк в файл с указанием кодировки UTF-16:
val lines = sequenceOf("abcde", "12345", "test")
val file = File("output.txt")
file.writeLines(lines, Charsets.UTF_16)
Пример
Использование массива строк для записи в файл:
val linesArray = arrayOf("first", "second", "third")
val file = File("array_data.txt")
file.writeLines(linesArray.asList())
Пример
Запись числовых данных в виде строк:
val numbers = listOf(1, 2, 3, 4, 5)
val stringNumbers = numbers.map { it.toString() }
val file = File("numbers.txt")
file.writeLines(stringNumbers)
Содержимое файла после выполнения:
1
2
3
4
5
Пример
Обработка исключений при записи файла:
val lines = listOf("data1", "data2", "data3")
val file = File("/readonly/file.txt")
try {
file.writeLines(lines)
println("File written successfully")
} catch (e: IOException) {
println("Error writing file: ${e.message}")
}
Результат выполнения кода:
String "Error writing file: Permission denied"
Смотрите также
-
функцию
readLines,
которая читает строки из файла -
функцию
writeText,
которая записывает текст в файл -
функцию
appendText,
которая добавляет текст в конец файла -
класс
File,
который представляет файл или директорию