Lee archivos dotenv como la mayoría de cargadores: quita el prefijo export, elimina comillas simples y dobles, convierte \n entre comillas dobles en salto de línea, une valores multilínea entre comillas y descarta los comentarios # tras un valor. Útil para comparar entornos o pasar variables a una configuración JSON.
Cómo se usa
- Pega datos, suelta un archivo o ábrelo. El formato de entrada se detecta solo, o elígelo en «De».
- Elige el formato de salida en «A». El resultado se actualiza mientras escribes.
- Los errores muestran la línea y columna exactas con una marca; toca el error para ir a él.
- Cambia a Árbol para explorar los datos. Copia o descarga el resultado, o inviértelo para convertir de vuelta.
- Los atributos XML se convierten en claves que empiezan por @ y el texto del elemento va a #text; se usa la misma convención al generar XML.
- La salida CSV aplana los objetos anidados en columnas con puntos (address.city). La descarga incluye BOM para que Excel abra bien UTF-8.
- TOML no tiene null y necesita una tabla en la raíz: se omiten los null y las listas se envuelven en «items».
- Desactiva «Números y booleanos» para mantener como texto todos los valores de CSV, XML, INI, .env o query string.
- Todo se ejecuta en tu navegador; no se sube nada.
Cómo se corresponden los formatos
JSON, YAML y TOML comparten el mismo modelo de datos: objetos, arrays, cadenas, números y booleanos, así que la conversión entre ellos no pierde información salvo en dos casos: TOML no tiene null y su documento debe ser una tabla en el nivel superior. Aquí los null se omiten y una lista en la raíz se envuelve en una clave items. YAML 1.2 es un superconjunto de JSON, así que cualquier JSON válido ya es YAML válido.
XML es un árbol de elementos, no datos clave-valor. Los atributos se escriben como claves que empiezan por @ (id="7" pasa a "@id": "7"), el texto del elemento va en #text y los hijos repetidos se convierten en arrays. Al escribir XML se aplica la misma convención a la inversa.
Formatos planos: CSV, INI, .env y query strings
CSV es una tabla, así que los objetos anidados se aplanan en columnas con notación de puntos como address.city, y cada elemento del array es una fila. Las secciones INI pasan a objetos, los .env a un objeto plano de pares clave-valor (entiende export, comillas y comentarios) y una query string como ?tag=a&tag=b&filter[brand]=x se convierte en {"tag": ["a", "b"], "filter": {"brand": "x"}}.
Tipos y trampas habituales
CSV, XML, INI, .env y las query strings no tienen tipos: todo es texto. Por defecto, valores como 42, 3.5 y true se convierten en números y booleanos; desactívalo para conservar como texto códigos postales como 08001 o identificadores. En YAML la sangría importa y no se admiten tabulaciones. Los analizadores YAML 1.1, como PyYAML, leen yes, no, on y off sin comillas como booleanos, así que pon entre comillas valores como el código de país NO.
Preguntas frecuentes
¿Cómo convierto JSON a YAML?
Pega el JSON o suelta un archivo .json y elige YAML en A. Los objetos se convierten en bloques clave: valor con sangría y los arrays en listas con guiones. Copia el resultado o descarga un .yaml.
¿Cualquier JSON válido es también YAML válido?
Sí, en YAML 1.2, que se diseñó como superconjunto de JSON. Aun así conviene convertirlo, porque el YAML en bloques es más fácil de leer y admite comentarios.
¿Qué pasa con los atributos XML al convertir a JSON?
Se convierten en claves con prefijo @, así que <item id="7">Pen</item> pasa a {"item": {"@id": "7", "#text": "Pen"}}. Los elementos repetidos con el mismo nombre forman un array.
¿Cómo se convierten a CSV los objetos JSON anidados?
Se aplanan en columnas con notación de puntos, por ejemplo address.city y address.zip. Un array de objetos da una fila por objeto, lista para Excel.
¿Por qué falta null en mi salida TOML?
TOML no tiene valor null. Las claves cuyo valor es null se omiten, así que comprueba si tu aplicación trata igual una clave ausente.
¿Se suben mis datos?
No. El análisis y la conversión se hacen en tu navegador, así que los archivos de configuración con contraseñas o claves de API no salen de tu dispositivo.