Convertidor de JSON a YAML - Convierte en ambos sentidos en línea
Convierte JSON a YAML y viceversa
Convertir entre JSON y YAML
JSON y YAML describen los mismos datos (mapas, listas, cadenas, números, booleanos y null) con dos sintaxis. JSON es lo que hablan las API y los archivos de paquetes; YAML es en lo que se escriben los archivos de configuración de Docker, Kubernetes, GitHub Actions y los pipelines de CI. Este convertidor traduce uno al otro al instante y se ocupa de los detalles que hacen tropezar: comillas, sangría y las palabras raras que YAML trata como booleanos.
Pasos
- 1 Elige el sentido y pega tu documento en el cuadro superior. El resultado aparece debajo mientras escribes.
- 2 Fija el ancho de sangría: 2 espacios es la convención en YAML y en la mayoría de guías de estilo JSON.
- 3 Copia el resultado, descárgalo como archivo o usa la salida como nueva entrada para comprobar que el viaje de ida y vuelta es exacto.
Qué cambia entre los dos formatos
YAML elimina llaves, corchetes y la mayoría de comillas y usa la sangría para la estructura, así que un objeto JSON de 40 líneas se convierte en un documento YAML de 25. Las claves conservan el orden. Las listas pasan a elementos con guion; los objetos anidados, a bloques sangrados; un objeto o lista vacíos siguen escribiéndose como {} o []. En sentido contrario, los comentarios YAML se pierden porque JSON no tiene comentarios.
Por qué algunas cadenas salen entrecomilladas
En YAML, un yes, no, on, off, true o null sin comillas se lee como booleano o null, y 123 o 1.0 como número. Una cadena que se parezca a uno de ellos debe ir entre comillas o cambia de tipo a la vuelta: el ejemplo clásico es el código de país NO convertido en false. El convertidor entrecomilla exactamente esas cadenas, más cualquiera con espacios al principio o al final, dos puntos seguidos de espacio o un carácter especial inicial, y deja todo lo demás sin comillas por legibilidad.
Cadenas multilínea
Una cadena con saltos de línea se escribe como escalar en bloque de YAML: una barra vertical en la línea de la clave y el texto sangrado debajo, con un signo menos cuando la cadena no termina en salto de línea. Es la forma que ves en los manifiestos de Kubernetes y en los archivos de CI, y se lee de vuelta exactamente como la misma cadena.
Sangría y compatibilidad
El convertidor escribe YAML 1.2, que lee cualquier analizador moderno: PyYAML, js-yaml, Go yaml, Ruby Psych. Las claves anidadas se sangran con el ancho que elijas; las claves de un objeto dentro de una lista van dos espacios después del guion en cualquier caso, como exige la especificación. Nunca se usan tabuladores.