Conversor de YAML, TOML y JSON
Convierte entre JSON, YAML y TOML, o valida y da formato a un documento, con la línea y la columna de cada error.
Ejemplos de código
Copia estos ejemplos en tu propio proyecto. Cada uno usa solo la biblioteca estándar del lenguaje, así que no hay nada que instalar.
import json
import tomllib
text = 'name = "codeknife"\nports = [80, 443]\ndebug = false'
print(json.dumps(tomllib.loads(text), indent=2))Qué hace
Convierte un documento entre JSON, YAML y TOML, en ambos sentidos, o lo valida y le da formato cuando los dos formatos son iguales. Cada error de sintaxis trae la línea y la columna donde se encontró.
Cómo se usa
- Pega un documento o suelta un archivo.
- Elige su formato en De y el que quieres en A. El mismo formato en ambos lados valida y da formato.
- Elige la sangría y copia o descarga el resultado, o usa Usar la salida como entrada para darle la vuelta.
Ejemplos
name: codeknife y ports: [80, 443] en YAML pasan a ser {"name": "codeknife", "ports": [80, 443]} en JSON, y name = "codeknife" y ports = [ 80, 443 ] en TOML.
Conviene saber
- El YAML se lee como versión 1.2: solo
trueyfalseson booleanos, así queyesyonsiguen siendo texto. Se rechaza un documento con varias partes---, una clave repetida o demasiados alias. - TOML necesita una tabla en el nivel superior y no tiene null. Convertir una lista o un null a TOML da un error que nombra la ruta.
- Las fechas de TOML siguen siendo fechas al dar formato a TOML, y pasan a ser texto al convertir a JSON o YAML.
- Los comentarios no se conservan al convertir, porque JSON no los tiene y los datos leídos no los llevan.
¿Cómo valido o doy formato en lugar de convertir?
Elige el mismo formato en De y A. El documento se lee de forma estricta, así que cada error indica su línea y columna, y uno válido se reescribe con sangría coherente.
Preguntas frecuentes
¿Por qué yes, no y on siguen siendo texto en YAML?
Esta herramienta lee YAML 1.2, donde solo true y false son booleanos. yes, no, on y off siguen siendo texto, a diferencia de algunos analizadores antiguos de YAML 1.1.
¿Por qué no todo documento JSON puede ser TOML?
TOML tiene una tabla en el nivel superior y no tiene null. Una lista arriba, o un null en cualquier sitio, se rechaza con un mensaje que nombra la ruta en vez de desaparecer en silencio.
¿Envía esta herramienta mis datos a algún sitio?
No. Todo ocurre en tu navegador. Lo que escribes nunca se envía a nuestros servidores.