Herramientas abiertas · 0

Acerca de

JSON a YAML

Pega JSON, o suelta un archivo .json, y el YAML se genera mientras escribes, con la sangría que elijas. Una cadena que un lector de YAML tomaría por otra cosa, como "NO", "on", "1.0" o "2024-01-01", se pone entre comillas, así que PyYAML, Ansible y Kubernetes leen el mismo texto que contenía tu JSON.

Qué hace

  • Un número entero demasiado largo para JavaScript se escribe dígito por dígito y se señala, porque JSON.parse lo redondearía.
  • Una cadena con saltos de línea queda en un bloque legible línea a línea, no una línea larga entre comillas con códigos de escape.
  • Una cadena con tabulación va entre comillas dobles, porque PyYAML y la biblioteca YAML de Go rechazan la tabulación en un valor sin comillas.
  • Las cadenas largas se quedan en una línea: nada se parte a los 80 caracteres.
  • Los acentos y los emojis se escriben tal cual, no como códigos de escape.
  • Un array en el nivel superior pasa a ser una lista de elementos con guion, y los vacíos quedan como [] y {}.
  • Una clave escrita dos veces conserva su último valor, como haría JSON.parse, y se señala su línea.

Cómo se usa

  1. Pega el JSON o suelta el archivo en la ventana.
  2. Elige una sangría de 2 o 4 espacios, y Ordenar claves si las quieres de la A a la Z.
  3. Lee las notas de Atención que haya bajo el resultado.
  4. Copia el YAML, o descárgalo con el mismo nombre y terminado en .yaml.

Qué no hace

  • JSON con comentarios o comas finales: JSON no los admite, así que la lectura se detiene en el primero y nombra su línea, para que lo repare el Formateador JSON.
  • Varios documentos separados por ---: un valor JSON da un solo documento YAML, así que un array en el nivel superior queda como lista.
  • Objetos en una línea entre llaves: los archivos de Kubernetes y de Compose se escriben en estilo de bloque, así que los objetos anidados van en líneas propias.

Preguntas

¿Por qué algunas de mis cadenas están entre comillas?

Porque, si no, un lector de YAML las tomaría por otra cosa. YAML 1.1, que siguen PyYAML, Ansible y muchas herramientas de Kubernetes, lee NO, off e y como booleanos, 2024-01-01 como una fecha y 012 como un número octal. Entre comillas siguen siendo las cadenas que tenía tu JSON.

¿JSON ya es YAML válido?

Casi siempre: YAML 1.2 se diseñó para que un archivo JSON sea también un archivo YAML. Convertir da la forma con sangría que la gente lee y edita, y pone entre comillas los valores que un lector de YAML 1.1, más antiguo, leería mal.

¿Qué pasa con null y con las cadenas vacías?

Un null se escribe como null, la forma en que coinciden todas las versiones de YAML. Una cadena vacía se queda entre comillas, como "", porque una clave sin nada detrás se leería como null.

¿Puedo volver a convertir el YAML en JSON?

Sí. Intercambiar pone el YAML en el cuadro y lo convierte en sentido contrario, con los mismos números y cadenas. De los comentarios que agregues en el lado del YAML se informa, porque JSON no tiene dónde ponerlos.

Todo lo de aquí funciona en tu navegador. Nada de lo que escribes, pegas o abres se sube, y no hay cuenta ni cola. Cómo funciona.

Se usa a menudo con

Más en Conversores

  • Conversor de unidades: Convierte longitud, peso, temperatura, volumen, área, velocidad, tamaño de datos y nueve magnitudes más, en los dos sentidos y con la fórmula.
  • Codificar y decodificar Base64: Codifica texto o archivos a Base64 y decodifícalos: alfabeto URL-safe, saltos de línea MIME, data URI e imágenes con vista previa.
  • Visor y editor de CSV: Abre un archivo CSV, Excel o JSON como tabla, límpialo (espacios, duplicados, letras rotas, fechas y números) y guárdalo como CSV, .xlsx o JSON.

Todas las herramientasAcerca de utilbrewPrivacidad