Kotlin:
Робота з TOML

Як це зробити:

Щоб обробити TOML у Kotlin, ви могли б використовувати бібліотеку, наприклад, ktoml. Спочатку додайте залежність у ваш build.gradle.kts:

dependencies {
    implementation("com.akuleshov7:ktoml:0.2.5")
}

Тепер давайте розпарсимо деякий TOML:

import com.akuleshov7.ktoml.file.TomlFileReader

fun main() {
    val tomlContent = TomlFileReader.readAndParseFile("config.toml")
    
    val databaseConfig = tomlContent.getTable("database")
    val host = databaseConfig.getString("host")
    val port = databaseConfig.getLong("port")

    println("Database Host: $host")
    println("Database Port: $port")
}

Припускаючи, що config.toml виглядатиме так:

[database]
host = "localhost"
port = 5432

Приклад виводу буде:

Database Host: localhost
Database Port: 5432

Поглиблено

TOML, створений співзасновником GitHub Томом Престон-Вернером у 2013 році, мав на меті бути простішим за YAML і більш типобезпечним за JSON. Він став дуже популярним, особливо з Cargo у Rust і системою модулів у Go. Альтернативи? YAML має більше функцій, JSON безпосередньо перетворюється на об’єкти в багатьох мовах програмування, і завжди є добрий старий XML. Що стосується реалізації, ktoml під ліцензією Apache 2.0 є чисто Kotlin бібліотекою і не тягне за собою Java бібліотеки, пропонуючи DSL для написання TOML теж, а не тільки для читання.

Див. також