DataSwap Conversores de archivos y datos rápidos, sin registro

Conversor de .env a JSON

Convierte un archivo .env a JSON, o un objeto JSON plano de vuelta a formato .env. Como los archivos .env suelen contener contraseñas, claves de API y tokens reales, todo esto ocurre en tu navegador — nada de lo que pegues se envía a ningún sitio.

Los valores se quedan como cadenas honestas — sin adivinar en silencio

Un archivo .env no tiene sistema de tipos: todo lo que sigue al = es texto plano. Esta herramienta respeta eso en vez de intentar ser lista — DEBUG=true se convierte en la cadena JSON "true", no en el booleano true, y PORT=8080 se convierte en la cadena "8080", no en un número. Si tu código necesita booleanos o números reales, esa conversión ocurre deliberadamente en tu código, no en silencio dentro de esta herramienta.

Ejemplo práctico: .env → JSON

Entrada:

# Database config
DB_HOST=localhost
DB_PASSWORD="p@ss w0rd"
DEBUG=true
EMPTY_VAL=

se convierte en:

{
  "DB_HOST": "localhost",
  "DB_PASSWORD": "p@ss w0rd",
  "DEBUG": "true",
  "EMPTY_VAL": ""
}

La línea de comentario desaparece, las comillas que rodean el valor de DB_PASSWORD se eliminan (dejando intacto el espacio interior), y DEBUG se queda como la cadena "true" en vez de convertirse en un booleano.

Ejemplo práctico: JSON → .env

Entrada:

{
  "DB_HOST": "localhost",
  "DB_PASSWORD": "p@ss w0rd",
  "DEBUG": true,
  "PORT": 8080
}

se convierte en:

DB_HOST=localhost
DB_PASSWORD="p@ss w0rd"
DEBUG=true
PORT=8080

DB_PASSWORD queda entre comillas porque su valor contiene un espacio; los demás no necesitan comillas, así que se escriben tal cual para mantener el archivo fácil de leer.

Preguntas frecuentes

¿Por qué DEBUG=true se convierte en la cadena JSON "true" y no en el booleano true?

Porque eso es exactamente lo que es. Un archivo .env no tiene sistema de tipos — todo lo que está a la derecha del = es texto plano, así que DEBUG=true y DEBUG=yes son igualmente solo los caracteres que siguen al signo igual. Esta herramienta nunca adivina que un valor "parece" un booleano o un número y lo convierte en silencio; DEBUG=true se convierte en la cadena JSON "true", y PORT=8080 se convierte en la cadena "8080", no en el número 8080. Si tu aplicación necesita booleanos o números reales, conviértelos explícitamente en tu código después de analizar — es una decisión que esta herramienta deja deliberadamente en tus manos en vez de adivinar.

¿Cuál es la diferencia entre cómo se tratan los valores entre comillas y sin ellas?

Los valores entre comillas dobles ( CLAVE="así" ) tienen sus secuencias de escape con barra invertida des-escapadas — \n se convierte en un salto de línea real, \" en una comilla literal, y \\ en una sola barra invertida — siguiendo la convención estándar de dotenv. Los valores entre comillas simples ( CLAVE='así' ) y los valores sin comillas se toman de forma completamente literal: no se procesa ningún escape, así que una barra invertida en CLAVE=C:\ruta se queda exactamente como dos caracteres, una barra invertida y una "r". Solo las comillas dobles activan el des-escapado.

¿Qué pasa si mi JSON tiene un objeto anidado o un arreglo como valor al convertir a .env?

Los archivos .env son planos por naturaleza — cada línea es CLAVE=VALOR, sin forma de representar estructura. En vez de inventar en silencio un esquema de aplanado que no pediste (como convertir {"db": {"host": "x"}} en DB_HOST=x), esta herramienta rechaza la conversión e indica exactamente qué clave contiene el valor anidado, para que tú mismo lo aplanes de la forma que tenga sentido para tu proyecto — o lo elimines.

¿Se sube mi archivo .env a algún sitio? Tiene contraseñas reales.

No — y esto importa aquí más que en casi cualquier otra parte del sitio. Los archivos .env suelen contener contraseñas de bases de datos, claves de API y tokens. El análisis en ambas direcciones ocurre por completo en tu navegador con procesamiento de texto en JavaScript puro; nada de lo que escribas o pegues se envía a un servidor, se guarda, se registra ni se incluye en ninguna analítica. Cerrar la pestaña borra todo.

¿Cómo decide esta herramienta si envolver un valor entre comillas al convertir de JSON a .env?

Un valor se envuelve entre comillas dobles solo cuando contiene espacios en blanco o uno de los caracteres " ' # \ — cualquier cosa que de otro modo haría ambigua la línea al volver a leerla. Dentro de esas comillas, una barra invertida o comilla doble literal se escapa para que el resultado se pueda volver a analizar correctamente. Valores simples como true, 8080 o localhost se escriben sin comillas, ya que ponérselas no añadiría más que ruido visual.

¿Esto omite los comentarios y las líneas en blanco de mi archivo .env?

Sí. Las líneas en blanco y cualquier línea cuyo primer carácter no sea un espacio y sea # se omiten por completo al convertir de .env a JSON, igual que hace cualquier cargador de dotenv real. Una línea sin ningún signo = también se omite, en vez de intentar adivinarla.