Cómo se usa
- Pegue su YAML en Texto YAML.
- Lea Validez. Si indica una línea y una columna, corrija el YAML en ese lugar.
- Si el YAML contiene varios documentos, el Texto JSON es una lista con un elemento por cada documento.
- Copie el Texto JSON, o descárguelo como data.json.
Cómo se lee el YAML
YAML 1.2 está definido por su especificación, que dice cómo se leen la sangría, los nombres, las listas, el texto entre comillas y los bloques. Esta herramienta lee el texto con la biblioteca yaml, que sigue esa especificación, y después escribe el resultado como JSON.
- Un mapa pasa a ser un objeto JSON, con sus nombres en el orden en que están escritos. Una secuencia pasa a ser una lista. Las palabras true, false y null pasan a ser booleanos y null, mientras que el texto entre comillas sigue siendo texto.
- Un número entero conserva cada dígito. Un nombre repetido en un mismo mapa se indica como error, porque JSON conservaría solo uno de sus valores.
- Un valor como .inf o .nan no tiene forma JSON, así que se rechaza en lugar de escribirse como null o como un número cambiado.
Varios documentos y alias
Un archivo YAML puede contener varios documentos, cada uno iniciado por una línea con ---. El conversor los lee todos. Un documento da un valor JSON; varios dan una lista JSON con un elemento por documento, en el orden en que aparecen. Un alias (*nombre) se sustituye por el valor al que apunta. Un archivo que repite un alias tantas veces que el resultado crecería de forma desmedida se rechaza.
Ejemplo resuelto: un archivo con dos documentos
El ejemplo 2.7 de la especificación YAML 1.2, Two Documents in a Stream, tiene una lista de bateadores de jonrones, luego una línea con ---, y después una lista de equipos. Convertido, el resultado es una lista JSON de dos listas, una por cada documento.
La primera lista contiene los tres jugadores y la segunda los dos equipos, en el orden en que están escritos.
| Documento | Elemento JSON |
|---|---|
| 1 | ["Mark McGwire", "Sammy Sosa", "Ken Griffey"] |
| 2 | ["Chicago Cubs", "St Louis Cardinals"] |
Preguntas frecuentes
¿Por qué el error muestra una línea y una columna?
La posición es donde el analizador notó el problema, contada desde 1. El error real puede estar un poco antes, por ejemplo una sangría incorrecta en la línea anterior a la que se indica.
¿Qué significa la nota sobre varios documentos?
Cada línea que empieza por --- inicia un documento nuevo. El JSON es entonces una lista con un elemento por cada documento, en orden. Si quería un solo documento, quite la línea --- sobrante.
¿Por qué .inf o .nan dan un error?
JSON no tiene infinito ni valor no numérico, así que ese valor no puede escribirse sin cambiarlo. Sustitúyalo por un número o por un texto, y vuelva a convertir el YAML.
¿Cambian los números en la conversión?
Los enteros conservan cada dígito, así que 12345678901234567890 se escribe exactamente. Un número decimal se escribe como el número de JavaScript más cercano, así que 1.50 pasa a 1.5 con el mismo valor.
¿Conserva el JSON el orden de los nombres?
Sí. Los nombres aparecen en el orden en que están escritos en el YAML. Un objeto de JavaScript llevaría un nombre como 2024 al principio, y este conversor no lo hace.
¿Se sube mi YAML a algún sitio?
No. La conversión se ejecuta en su navegador, y lo que pega no se envía a nuestro servidor.
Fuentes
- YAML Ain't Markup Language (YAML), revisión 1.2.2 (en inglés)
- RFC 8259: formato de intercambio de datos JavaScript Object Notation (JSON) (en inglés)
- yaml: la biblioteca YAML de JavaScript que usa esta herramienta (en inglés)
Cifras y texto revisados por última vez el martes, 10 de noviembre de 2026.