Convertidor de YAML a JSON

Convierte YAML a JSON y JSON a YAML, con la línea y la columna exactas de cualquier error de sintaxis.

Cómo usar

  1. Pega YAML o JSON — la herramienta descubre cuál de los dos es, o eliges tú mismo la dirección.
  2. Haz clic en "Convertir". Si la sintaxis está rota, lee la línea y la columna del mensaje y el símbolo que apunta al carácter culpable.
  3. Copia el resultado o descárgalo como converted.json o converted.yaml. No se sube nada.

Sobre esta herramienta

YAML y JSON describen lo mismo — mapas, listas, cadenas, números, booleanos y null — con prioridades opuestas. JSON usa llaves y comillas, que a las máquinas les gustan y las personas escriben mal. YAML usa indentación y casi nada de puntuación, que a las personas les gusta hasta que un espacio de más cambia la forma del documento. Convertir de uno a otro es trabajo de rutina: leer un manifiesto de Kubernetes o un workflow de GitHub Actions como JSON para que un script lo consuma, o volver a convertir la respuesta de una API en YAML para un archivo de configuración. Esta herramienta va en las dos direcciones y detecta cuál de los dos pegaste.

La conversión es la mitad fácil; donde esta herramienta pone su esfuerzo es en lo que pasa cuando el YAML está roto. Un error de sintaxis se informa como una línea y una columna contadas igual que en un editor, con un fragmento de las líneas de alrededor y un símbolo que apunta al carácter exacto que detuvo el parser. La posición no siempre está donde esperas. Una tabulación usada para indentar se rechaza en la tabulación misma, y el fragmento la imprime como una flecha para que puedas ver aquello que no se ve. Una comilla sin cerrar se informa al final del archivo, y no en la comilla que la abrió, porque ahí es donde el parser se quedó sin texto buscando la de cierre. Una clave duplicada se señala en su segunda aparición, y aquí es un error, no una advertencia. Los errores de JSON reciben el mismo tratamiento: los navegadores los redactan de forma distinta y algunos informan solo un desplazamiento de caracteres, así que la línea y la columna se calculan aquí y salen idénticas en todas partes.

YAML puede expresar cosas que JSON no, y cada una de ellas se señala en vez de cambiar tus datos en silencio. Las anclas y los alias se expanden, así que un alias se convierte en una copia completa del valor anclado, y se te avisa. Las merge keys no: el parser trabaja con el esquema JSON, que no las resuelve, así que una línea << sobrevive como una clave literal, con una advertencia para que unas esos campos a mano. Un archivo con varios documentos separados por --- se convierte en un array JSON, un elemento por documento. Los valores .inf y .nan salen como null, y los enteros enormes pierden sus últimos dígitos; ambos casos se señalan. Ese esquema también es una decisión de seguridad: las etiquetas como !!js/function se rechazan por desconocidas en vez de instanciarse. Y nada de esto viaja — todo se ejecuta en tu dispositivo.

Preguntas frecuentes

¿Salen mi YAML o mi JSON de mi navegador?

No. El texto se analiza y se convierte mediante JavaScript en tu propio dispositivo — no se envía nada a ninguna parte, no se guarda ni se registra. Aquí eso importa: un manifiesto de Kubernetes lleva nombres de host, puertos, nombres de buckets y cuentas de servicio.

¿Qué significan exactamente la línea y la columna del error?

Son el punto donde el parser se rindió, contados desde 1 como en tu editor, con el símbolo apuntando a ese carácter. Un caso sorprende a la gente: una comilla sin cerrar se informa al final del archivo, así que busca hacia atrás la última comilla que abriste.

¿Se admiten las anclas y los alias?

Sí. Cada alias se convierte en una copia completa del valor anclado dentro del JSON, y la herramienta lo indica. Las merge keys son la excepción: no se resuelven, el << sobrevive como una clave literal y recibes una advertencia explícita en lugar de un resultado silenciosamente incorrecto.

¿Puede convertir un archivo con varios documentos separados por ---?

Sí. JSON no tiene el concepto de varios documentos en un mismo archivo, así que cada documento YAML se convierte en un elemento de un array JSON, en orden, y un aviso indica cuántos se encontraron.

¿Por qué "yes" salió como cadena en lugar de true?

Porque YAML 1.2 trata como booleanos solo true y false; yes, no, on y off quedan como cadenas. Los parsers más antiguos de la versión 1.1 los convertían — la misma regla que transforma el código de país NO en false. Pon un valor entre comillas siempre que deba seguir siendo texto.

Herramientas relacionadas

¿Enlaces largos? Acórtalos gratis

Vai.la convierte cualquier URL en un enlace corto con estadísticas de clics, código QR y tu propio biolink.

Vai.la no se hace responsable del uso de las herramientas ni de las decisiones tomadas a partir de sus resultados.