Guía de conversión entre TOML y JSON

JSON

Introducción a TOML

TOML (Tom's Obvious Minimal Language) es un formato diseñado específicamente para archivos de configuración, creado por el cofundador de GitHub, Tom Preston-Werner. Sus objetivos son:

  • Legible por humanos con semántica clara
  • Mapeable sin ambigüedades a una tabla hash
  • Más simple que YAML, más amigable que JSON

Sintaxis básica

title = "TOML Example"

[owner]
name = "Alice"
email = "alice@example.com"

[database]
host = "127.0.0.1"
port = 5432
enabled = true

Comparación TOML vs JSON vs YAML

Característica TOML JSON YAML
Comentarios Soporta # No Soporta #
Tipo fecha Nativo No No
Cadenas multilínea No
Complejidad Baja Media Alta
Ambigüedad de análisis Ninguna Ninguna
Uso principal Archivos de configuración Intercambio de datos Archivos de configuración

Conversión con la herramienta TOML↔JSON

Paso 1: Elegir la dirección de conversión

Abra la herramienta TOML↔JSON y seleccione "TOML → JSON" o "JSON → TOML".

Paso 2: Ingresar datos

Pegue el contenido TOML o JSON en el área de entrada. También se admite la carga directa de archivos.

Paso 3: Convertir

Haga clic en el botón de conversión. Los resultados aparecen instantáneamente en el área de salida.

Paso 4: Copiar o descargar

Copie el resultado de la conversión con un clic, o descárguelo como archivo en el formato correspondiente.

Reglas de mapeo de TOML a JSON

Tipos básicos

string = "hello"
integer = 42
float = 3.14
boolean = true

Convertido a JSON:

{
  "string": "hello",
  "integer": 42,
  "float": 3.14,
  "boolean": true
}

Tabla → Objeto

[server]
host = "localhost"
port = 8080

Convertido a JSON:

{
  "server": {
    "host": "localhost",
    "port": 8080
  }
}

Arreglos

ports = [8000, 8001, 8002]

Fechas y horas

TOML soporta nativamente tipos de fecha. Al convertir a JSON, se convierten en cadenas:

created = 2026-06-01T10:00:00Z

"created": "2026-06-01T10:00:00Z"

Consideraciones de JSON a TOML

  • JSON null no tiene equivalente en TOML — requiere manejo especial durante la conversión
  • Los arreglos de tipos mixtos en JSON no son válidos en TOML
  • Los objetos JSON anidados se convierten en tablas TOML
  • Revise los comentarios y el formato después de la conversión para asegurarse de que cumplan con sus necesidades

Casos de uso comunes

Proyectos Rust: Cargo.toml

[package]
name = "my-app"
version = "0.1.0"
edition = "2021"

[dependencies]
serde = "1.0"
tokio = { version = "1", features = ["full"] }

Al modificar versiones de dependencias, convierta a JSON con la herramienta TOML↔JSON para procesamiento programático, y luego convierta de vuelta.

Proyectos Python: pyproject.toml

[project]
name = "my-package"
version = "1.0.0"
requires-python = ">=3.8"

[project.dependencies]
requests = "^2.28"
flask = "^2.3"

Configuración de sitios estáticos

Generadores de sitios estáticos como Hugo y Zola usan TOML como formato de configuración, requiriendo frecuentemente conversión hacia y desde JSON.

Interoperabilidad con otros formatos

  1. TOML ↔ YAML: Primero convierta a JSON con la herramienta TOML↔JSON, luego a YAML con la herramienta YAML↔JSON
  2. Valide los resultados intermedios con el Formateador JSON
  3. Preserve los comentarios originales de TOML y agréguelos manualmente después de la conversión

Errores comunes

Error Causa Solución
Fallo de análisis TOML Error de sintaxis Verifique los encabezados de tabla y el formato clave-valor
Problema de formato de fecha Zona horaria faltante Use el formato ISO 8601 completo
null no se puede convertir TOML no tiene null Use cadena vacía o elimine el campo
Error de formato de tabla en línea Sintaxis no estándar Use formato de tabla estándar en su lugar

Resumen

TOML es una excelente opción para archivos de configuración modernos, y la conversión hacia/desde JSON es muy práctica para la gestión de configuración de proyectos. La herramienta TOML↔JSON permite una conversión rápida de formatos, y combinada con la herramienta YAML↔JSON, puede alternar libremente entre los tres formatos.

#TOML#JSON#配置文件#Rust#Python