Conversor de configuração
Cole um formato de configuração e receba os outros dois enquanto digita.
Como usar
- Cole sua configuração — YAML, JSON ou .properties do Java. O formato é detectado e os outros dois aparecem abaixo enquanto você digita; sem botão para clicar.
- Se a detecção errar, escolha o formato de origem. Escolha 2 ou 4 espaços de indentação e desative “Expandir chaves com pontos” para manter chaves no estilo Spring achatadas.
- Copie ou baixe cada resultado separadamente — os nomes de arquivo são config.yaml, config.json e config.properties.
Exemplo
Entrada (YAML)
server: port: 8080 name: order-service debug: true
JSON e Properties
{
"server": {
"port": 8080,
"name": "order-service"
},
"debug": true
}
Properties
----------
server.port = 8080
server.name = order-service
debug = trueApenas as regras padrão: a origem é detectada como YAML, então 8080 continua número e true continua booleano. Properties não tem tipos, então os mesmos valores saem como as strings 8080 e true — quando a origem é .properties, eles são strings do começo ao fim.
Regras, limites e problemas conhecidos
- Apenas três formatos: YAML, JSON e .properties do Java. Sem TOML, sem cabeçalhos [seção] de INI, sem XML ou CSV.
- YAML é suportado como um subconjunto de configuração: mapeamentos em bloco, sequências, fluxo {…} / […], escalares entre aspas e escalares de bloco | / >. Âncoras (&), aliases (*), !tags, chaves de mesclagem << e chaves complexas ? são reportadas como erros em vez de adivinhadas.
- Apenas o primeiro documento YAML é convertido; um --- posterior é ignorado e reportado.
- Comentários não são transportados: os três formatos os posicionam de formas diferentes, então um comentário no lugar errado é pior do que nenhum.
- Properties não tem tipos. Todo valor é uma string, então port = 8080 vira "8080" no JSON — não 8080. Números, booleanos e null só sobrevivem quando a origem é YAML ou JSON.
- Texto não ASCII é escrito como está (UTF-8), não escapado como \uXXXX. O Properties.store() do Java grava ISO-8859-1, então salve o arquivo como UTF-8 se for colá-lo em um projeto Java.
- Inteiros além do intervalo seguro (como 12345678901234567890) são mantidos como strings com os dígitos exatos que você digitou, em vez de arredondados para um número.
- A ordem das chaves segue sua entrada; não há opção de ordenação.
- Um array ou valor solto no nível superior não pode ser escrito como properties — esse painel reporta isso, o outro ainda converte.
- Sem upload de arquivo, sem parâmetros de URL, sem histórico. Tudo roda no seu navegador: nada é enviado ou armazenado.
- Uma string contendo quebra de linha é escrita como "a\nb" no YAML, não como escalar de bloco |.
- Limites: 1.000.000 de caracteres e 64 níveis de aninhamento — acima de qualquer um, você recebe um erro em vez de um resultado truncado. Acima de 200.000 caracteres o resultado é atualizado cerca de 0,6 s depois de você parar de digitar; a saída usa LF e não termina com quebra de linha.
Ferramentas relacionadas
O que as pessoas costumam precisar depois que a configuração está no formato certo.