Cómo convertir JSON a YAML
- Pega el JSON o abre un archivo; el YAML aparece mientras escribes. Elige una sangría de 2 o 4 espacios.
- Para hacerlo al revés, cambia la dirección a YAML → JSON y pega el YAML.
- Copia el resultado o descárgalo como archivo
.yamlo.json.
JSON vs YAML
| JSON | YAML | |
|---|---|---|
| Estructura | llaves {} y corchetes [] | sangría y elementos de lista con - |
| Cadenas | siempre entre comillas dobles | comillas solo cuando hacen falta |
| Comentarios | no permitidos | # comment |
| Texto multilínea | escapes \n | bloques literales con | |
| Uso típico | API e intercambio de datos | archivos de configuración |
YAML 1.2 es un superconjunto de JSON, así que un documento JSON ya es YAML válido. El conversor escribe en su lugar el estilo de bloque, más legible.
Valores que hay que poner entre comillas en YAML
Algunas palabras sin comillas cambian de tipo en YAML: yes, no, on y off son booleanos en los parsers de YAML 1.1, 007 y 1e3 son números, y null o ~ significan null. Es el famoso “problema de Noruega” (Norway problem): el código de país NO se convierte en false si no va entre comillas. El conversor pone comillas a esas cadenas automáticamente, para que al leer el YAML se obtengan exactamente los mismos datos.
YAML compatible en la conversión YAML → JSON
El parser entiende el YAML que se usa en archivos de configuración y API: mapeos y listas de bloque, cadenas sin comillas, con comillas simples o dobles, bloques multilínea | y >, colecciones en línea [ ] y { }, comentarios y el marcador de documento ---. Las anclas (&), los alias (*) y las etiquetas personalizadas se indican como no compatibles, con el número de línea. Solo se convierte el primer documento de un archivo con varios documentos.
Preguntas frecuentes
¿YAML es un superconjunto de JSON?
YAML 1.2 se diseñó como un superconjunto de JSON, así que prácticamente cualquier archivo JSON también es YAML válido. Lo contrario no se cumple: YAML tiene comentarios, anclas y bloques multilínea que JSON no tiene.
¿Se conservan los comentarios al convertir YAML a JSON?
No. JSON no admite comentarios, así que se descartan. Las claves, los valores y su orden se conservan.
¿Por qué se rechaza mi YAML?
Las causas habituales son usar tabulaciones para la sangría (YAML solo admite espacios), elementos de una misma lista o mapeo que no empiezan en la misma columna y la falta de un espacio después de los dos puntos. El mensaje de error te indica la línea.
¿Qué tipos reciben los valores YAML en el JSON?
Se sigue el core schema de YAML 1.2: true/false pasan a ser booleanos, null y ~ pasan a ser null y los números sin comillas se convierten en números JSON, mientras que palabras como yes siguen siendo cadenas. Pon entre comillas códigos como "007" en tu YAML para conservarlos como texto.