Kotlin:
Работа с CSV

Как:

Чтобы работать с CSV в Kotlin, вы можете использовать базовую библиотеку или сторонние библиотеки, такие как Kotlinx.serialization или Apache Commons CSV. Здесь я покажу вам основные операции ввода/вывода без внешних библиотек.

import java.io.File

fun main() {
    // Запись в CSV
    val outputFile = File("data.csv")
    outputFile.printWriter().use { out ->
        out.println("id,name,age")
        out.println("1,John Doe,30")
        out.println("2,Jane Smith,25")
    }

    // Чтение из CSV
    File("data.csv").forEachLine { line ->
        val (id, name, age) = line.split(',')
        println("ID: $id, Имя: $name, Возраст: $age")
    }
}

Вывод:

ID: 1, Имя: John Doe, Возраст: 30
ID: 2, Имя: Jane Smith, Возраст: 25

Подробнее

Корни CSV уходят в ранние дни компьютерной эры, когда память была ограничена, и форматы обмена данными должны были быть простыми. Несмотря на появление альтернатив, таких как JSON и XML, CSV остается популярным благодаря своей простоте использования, совместимости и читаемости для человека.

Корректная обработка CSV может быть более сложной из-за особых случаев (например, запятые в данных, многострочные поля и т.д.). Библиотеки, такие как Apache Commons CSV и Kotlinx.serialization, учитывают эти случаи и предоставляют дополнительный функционал.

Смотрите также

  • RFC 4180: Общий формат и MIME-тип для файлов CSV.
  • Apache Commons CSV: Java-библиотека для работы с файлами CSV, которую можно использовать в Kotlin.
  • Kotlinx.serialization CSV: Kotlin-библиотека, упрощающая сериализацию в формат и из формата CSV.