Kotlin:
Trabajando con TOML

Cómo hacerlo:

Para manejar TOML en Kotlin, podrías usar una biblioteca como ktoml. Primero, vamos a agregar la dependencia en tu build.gradle.kts:

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

Ahora, vamos a analizar algo de TOML:

import com.akuleshov7.ktoml.file.TomlFileReader

fun main() {
    val contenidoToml = TomlFileReader.readAndParseFile("config.toml")
    
    val configuracionBaseDatos = contenidoToml.getTable("database")
    val host = configuracionBaseDatos.getString("host")
    val puerto = configuracionBaseDatos.getLong("port")

    println("Host de la Base de Datos: $host")
    println("Puerto de la Base de Datos: $puerto")
}

Asumiendo que config.toml se ve así:

[database]
host = "localhost"
port = 5432

El resultado sería:

Host de la Base de Datos: localhost
Puerto de la Base de Datos: 5432

Análisis Profundo

TOML, ideado por el cofundador de GitHub, Tom Preston-Werner, en 2013, aspiraba a ser más sencillo que YAML y más seguro en cuanto a tipos que JSON. Se ha convertido en un éxito, especialmente con el Cargo de Rust y el sistema de módulos de Go. ¿Alternativas? YAML tiene más características, JSON se traduce directamente en objetos en muchos lenguajes de programación, y siempre está el buen y viejo XML. En cuanto a la implementación, ktoml, bajo la licencia Apache 2.0, es una biblioteca puramente Kotlin y no arrastra librerías de Java, ofreciendo DSLs para escribir TOML también, no solo para leer.

Ver También