Conversor de .properties do Java para JSON

Converta arquivos .properties do Java em JSON segundo as regras do Properties.load: comentários, separadores = : e espaço, continuação de linha, escapes \uXXXX e aninhamento.

Executa totalmente no seu navegador. Seus dados nunca são enviados.

Ferramentas Relacionadas

Ver Todas

O que é Properties para JSON?

Cole um arquivo .properties do Java – por exemplo o application.properties do Spring Boot ou um message bundle – e obtenha JSON. As chaves podem ficar planas ("app.name") ou ser aninhadas em objetos pelos pontos.

Como usar Properties para JSON

  1. Cole o .properties na caixa Entrada .properties, ou use Carregar exemplo ou Abrir arquivo.
  2. Ative ou desative Aninhar chaves com ponto em objetos e escolha a Indentação do JSON.
  3. A saída JSON é atualizada enquanto você digita; use Copiar ou Baixar.

Exemplo

Entrada
app.name = My App
app.port: 8080
Saída
{
  "app.name": "My App",
  "app.port": "8080"
}

Quando usar Properties para JSON

Use-o para inspecionar, migrar ou comparar configurações Java e bundles de i18n. Ele não resolve placeholders do Spring como ${server.port} nem arquivos específicos de profile.

Como funciona Properties para JSON

O parser segue o java.util.Properties.load: linhas que começam com # ou ! são comentários, uma linha que termina com um número ímpar de barras invertidas continua na próxima (com os espaços iniciais removidos) e a chave termina no primeiro =, : ou espaço sem escape. Os escapes \t, \n, \r, \f e \uXXXX são decodificados; qualquer outro caractere com escape vale ele mesmo. Duplicados posteriores prevalecem. No aninhamento, uma chave que colidiria com um valor existente (por exemplo a=1 e a.b=2) fica plana, para nada se perder. Todos os valores são strings, como no Java.

Casos de Uso Comuns

  • Converter o application.properties em JSON ou em uma estrutura pronta para YAML
  • Transformar um message bundle Java em JSON para uma biblioteca de i18n em JavaScript
  • Comparar dois arquivos de propriedades como JSON
  • Decodificar escapes \u em bundles antigos ISO-8859-1

Perguntas Frequentes

Números são convertidos?

Não. Propriedades Java são sempre strings, então os valores continuam strings, como “8080”.

Como a continuação de linha é tratada?

Uma barra invertida no final junta a linha seguinte, e os espaços iniciais dessa linha são removidos, exatamente como o Java faz.

O que acontece quando o aninhamento conflita?

Se existirem a e a.b, a.b fica como chave plana em vez de sobrescrever a.

Próximos passos recomendados

Explore mais categorias