Inicio › Herramientas para desarrolladores › Convertidor de Properties a YAML

Convertidor de Properties a YAML

Pega un archivo .properties de Java, como el application.properties de Spring Boot, y obtén un application.yml anidado y limpio, o cambia la dirección para aplanar YAML en propiedades clave=valor. Se procesan escapes, caracteres \uXXXX, continuaciones de línea, índices de listas y documentos de perfil #---.

Última actualización:

Funciona por completo en tu navegador; tu configuración nunca se sube. Los separadores #--- de Spring Boot se convierten en documentos YAML --- y viceversa. Consejo: Ctrl + Intro convierte.

Publicidad
Publicidad

Cómo usar Convertidor de Properties a YAML

  1. Elige la dirección: Properties → YAML o YAML → Properties.
  2. Pega tu archivo, suéltalo en la entrada o pulsa Abrir. Para empezar se carga un ejemplo de Spring Boot.
  3. Ajusta la salida: sangría y comillas de YAML, o separador y escapado ASCII para properties.
  4. Revisa el resultado; los conflictos y duplicados se listan bajo los editores y los errores de sintaxis muestran la línea exacta.
  5. Copia o descarga application.yml o application.properties, o pulsa Invertir dirección para convertir de vuelta.

Ejemplo: application.properties y application.yml

application.propertiesapplication.yml
server.port=8080
spring.datasource.url=jdbc:h2:mem:db
spring.datasource.username=sa
app.origins[0]=https://a.com
app.origins[1]=https://b.com
#---
spring.config.activate.on-profile=prod
server.port=443
server:
  port: 8080
spring:
  datasource:
    url: jdbc:h2:mem:db
    username: sa
app:
  origins:
  - https://a.com
  - https://b.com
---
spring:
  config:
    activate:
      on-profile: prod
server:
  port: 443

Secuencias de escape de properties

En el archivoSignifica
\t \n \r \fTabulación, salto de línea, retorno de carro, salto de página
\u00e9El carácter Unicode é
\= \: \ (en una clave)Un =, : o espacio literal que no termina la clave
\\Una sola barra invertida
\ al final de una líneaEl valor continúa en la línea siguiente (se ignoran sus espacios iniciales)

Por qué los equipos de Spring Boot se pasan a YAML

  • Menos repetición: los prefijos compartidos como spring.datasource se escriben una sola vez.
  • Listas reales: líneas - item en lugar de claves numeradas [0], [1].
  • Perfiles en un solo archivo: --- separa documentos, cada uno activado con spring.config.activate.on-profile.
  • Cuidado: @PropertySource no puede cargar archivos YAML, así que conserva un archivo .properties para esas clases.

Valida el resultado con el Validador de YAML, o convierte archivos de entorno con ENV a JSON.

Preguntas frecuentes

¿Cómo se convierten las claves con puntos a YAML?

Cada punto de una clave abre un nivel más profundo, así que spring.datasource.url=… y spring.datasource.username=… se convierten en un mapa spring que contiene un mapa datasource con url y username. Las claves que comparten prefijo se fusionan, que es exactamente como Spring Boot lee application.yml.

¿Cómo escribo listas en properties?

Usa índices entre corchetes: app.origins[0]=a y app.origins[1]=b se convierten en una lista YAML con dos elementos, y app.servers[0].name=alpha crea una lista de objetos. Los índices que faltan se rellenan con null y se informan.

¿Qué sintaxis de properties se admite?

Todo lo que acepta java.util.Properties: separadores key=value, key: value o key value, líneas de comentario # y !, barra invertida al final de una línea para continuar, separadores escapados en claves como my\ key, y los escapes \t, \n, \r, \f y \uXXXX. Las claves duplicadas usan el último valor, como Java.

¿Qué pasa cuando una clave es a la vez un valor y un padre?

YAML no permite que una clave tenga a la vez un valor e hijos. Si a.b=1 aparece después de a=x, la segunda clave se escribe como una clave entre comillas "a.b" junto a a, que Spring Boot sigue asignando a a.b. Si el valor del padre aparece después de sus hijos, se omite y se informa.

¿Cómo funciona YAML → properties?

Se analiza el YAML (incluidos anclajes y claves de fusión) y luego cada valor hoja se escribe como una clave completa con puntos. Las listas pasan a índices [0], [1], null se convierte en un valor vacío y los documentos --- múltiples se separan con el marcador #--- de Spring Boot. Los valores se copian tal cual, así que 1.0 sigue siendo 1.0.

¿Tengo que escapar los caracteres no ASCII?

Desde Java 9, los resource bundles .properties se leen como UTF-8 y Spring Boot lee application.properties como UTF-8, así que é o ☀ se pueden escribir directamente. Marca Escapar no ASCII como \uXXXX para herramientas antiguas que esperan ISO-8859-1.

¿Se sube mi configuración?

No. Ambas conversiones se ejecutan en JavaScript en esta página, así que las contraseñas y las cadenas de conexión nunca salen de tu dispositivo.

¿Se prueban todas las herramientas de FreeToolCabin para comprobar su calidad y precisión?

Sí. Cada herramienta del sitio pasa pruebas automáticas en navegadores reales para comprobar que el resultado es correcto y que no hay errores. Si encuentras un fallo o tienes una sugerencia, escríbenos a [email protected] y lo revisaremos.

Herramientas relacionadas

Ver todas las de Conversores de datos y formatos de archivo →