Conversor de JSON a Properties

Convierte un objeto JSON a formato .properties de Java, con aplanado de objetos anidados y reinserción de comentarios. Solo en tu navegador.

Genera un archivo .properties de Java a partir de un objeto JSON, listo para que lo carguen java.util.Properties o Spring Boot. Los objetos anidados pasan a claves con puntos del tipo server.port=8080; los separadores y saltos de línea se escapan con barra invertida para que los valores sobrevivan al viaje de ida y vuelta, y el mapa $comments se reescribe como comentarios #. Todo se procesa en el navegador, sin subir ningún dato.

JSON Entrada

Subir

Opciones avanzadasConvertirLimpiar

.properties Salida

El resultado aparecerá aquí...

CopiarDescargar

El resultado aparecerá aquí...

Sobre el conversor de JSON a Properties

Java lee un .properties línea a línea, así que el serializador escapa todo lo que alteraría la forma en que se parte cada línea: un espacio dentro de una clave se escribe \ (barra invertida y espacio), un = o : dentro de un valor pasa a \= o \:, y un salto de línea se convierte en \n. Clave y valor se unen con =, y los objetos JSON anidados se aplanan en claves con puntos manteniendo su orden. El texto no ASCII, como café, se escribe en UTF-8 y no como escapes \uXXXX. Desde Java 9 los resource bundles se leen en UTF-8, pero Properties.load(InputStream) decodifica en ISO-8859-1; si tu propio código usa esa llamada, carga el archivo a través de un Reader en UTF-8.

También te puede interesar

Properties a JSON

Convierte archivos .properties de Java a JSON con claves con puntos anidadas e inferencia de tipos para números y booleanos.

Abrir herramienta

JSON a Env

Convierte objetos JSON a formato .env CLAVE=VALOR con aplanado de claves con puntos.

Abrir herramienta

Formateador y Validador JSON

Formatear, validar y visualizar datos JSON.

Abrir herramienta

YAML a JSON

Convertir YAML a JSON o JSON a YAML.

Abrir herramienta

Cómo convertir JSON a .properties

  1. 1

    Parte de un objeto JSON

    Escríbelo en el panel de entrada o carga con el icono del matraz el ejemplo { "server": { "port": 8080 } }. Las claves de primer nivel se convierten en nombres de propiedad.

  2. 2

    Ajusta el separador de claves

    Desde Opciones avanzadas puedes mantener el punto al estilo Java de nombres como spring.datasource.url, elegir otro separador o desactivar el aplanado para que los objetos anidados se queden como texto JSON.

  3. 3

    Serializa con escapes

    Pulsa Convertir: cada hoja da una línea clave=valor, y los espacios en claves, los separadores dentro de valores y los saltos de línea se escapan con barra invertida, de modo que java.util.Properties vuelve a leer exactamente los mismos valores.

  4. 4

    Llévalo a src/main/resources

    Copia la salida o descarga un archivo .properties para la carpeta src/main/resources de tu proyecto. Con el botón de invertir el sentido lo vuelves a pasar a JSON.

Referencias

Herramientas para desarrolladores relacionadas

Preguntas frecuentes sobre JSON a Properties

¿Qué caracteres se escapan con barra invertida?
Los espacios dentro de una clave, los signos = y : dentro de los valores y los saltos de línea. Por ejemplo, a\ b=x\=y o note=line1\nline2: son justo los escapes que java.util.Properties decodifica al cargar el archivo.
¿Las tildes y la ñ se escriben como escapes \uXXXX?
No: se guardan como UTF-8 sin escapar. Java 9 y posteriores cargan los resource bundles .properties en UTF-8, pero java.util.Properties#load(InputStream) asume ISO-8859-1; si tu código usa esa API, lee el archivo con load(Reader) y un lector UTF-8.
¿Sirve para crear el application.properties de Spring Boot?
Sí. Spring Boot usa nombres de propiedad con puntos, y con el separador por defecto { "server": { "port": 8080 } } queda como server.port=8080.
¿Cómo se escriben los arrays de JSON?
Como un único valor con su texto JSON, por ejemplo hosts=["a","b"]. No se genera la forma indexada de Spring Boot (hosts[0]=a).
¿Los booleanos y números conservan su tipo?
En el archivo no: un valor .properties siempre es una cadena, así que true, false o el número quedan escritos como texto. Properties a JSON los devuelve a tipos JSON reales cuando la inferencia de tipos está activa.
¿Qué ocurre con el objeto $comments?
Cada entrada de $comments —como las que produce Properties a JSON— se escribe como línea # encima de la clave a la que pertenece. Con Comentarios en "Ignorar" obtienes solo líneas clave=valor.
¿Sale mi JSON del navegador?
No. Analizar y formatear ocurre en local; tus datos no viajan en ninguna petición de red.