Converter JSON para YAML
Cole o JSON e receba um YAML limpo, com as strings problemáticas entre aspas para manterem o significado.
Funciona inteiramente no seu navegador
- Entrada
- 0
- Saída
- 0
- Variação
- 0%
Entrada de até cerca de 10 MB. Converte apenas dados; o JSON não tem comentários, então nenhum aparece no YAML.
Como converter JSON para YAML
- Cole o JSON na caixa ou clique em Inserir exemplo.
- Escolha recuo de 2 ou 4 espaços e ative Ordenar chaves para listar cada mapeamento em ordem alfabética.
- Se o JSON for inválido, você vê a linha e a coluna do erro. Caso contrário, copie o YAML ou baixe-o como arquivo
.yaml.
Como transformar JSON em YAML legível
Converter JSON para YAML é, em grande parte, reescrever os mesmos dados de um jeito mais fácil de ler. Chaves e aspas dão lugar a recuo e palavras simples, e é por isso que as configurações de Kubernetes, Compose e sistemas de CI costumam ser escritas em YAML. Partindo de um JSON, como a resposta de uma API ou um manifesto gerado, a conversão é mecânica, mas um detalhe exige cuidado: o YAML decide o tipo de um valor pela aparência dele.
No YAML, um true sem aspas é booleano, null é nulo e 1.0 é número. Uma string do JSON que por acaso se pareça com um desses, como "null", "1.0" ou "0x1F", precisa ficar entre aspas no YAML, senão muda de tipo ao ser lida. O conversor coloca aspas exatamente nesses casos, além das strings vazias e dos textos que começam com símbolos que têm significado no YAML, e depois confere o resultado lendo-o de volta.
Texto de várias linhas vira um bloco literal, muito mais fácil de ler do que uma string longa cheia de escapes \n. Objetos e arrays vazios são escritos como {} e []. Como o JSON não tem comentários, o YAML começa sem nenhum; você pode adicionar os seus depois.
Dicas
- Para voltar de YAML para JSON, use Converter YAML para JSON.
- Se não tiver certeza de que o JSON está bem formado, valide e formate-o antes com Formatar e validar JSON.
- Prefere uma planilha? JSON para CSV achata um array de objetos.
Perguntas frequentes
Meu JSON é enviado para algum lugar?
Não. Ele é lido e convertido por código que roda no seu navegador, então nada do que você cola sai do seu dispositivo.
Por que algumas strings ficam entre aspas?
Um yes, null, 1.0, 012 ou 0x1F sem aspas seria lido de volta como booleano, nulo ou número, e não como a string que você tinha. O conversor coloca essas strings (e as strings vazias) entre aspas para que o YAML signifique o mesmo que o JSON.
Como sei que o YAML corresponde ao JSON?
Depois de converter, a página lê o YAML de volta com um parser YAML 1.2 e o compara com os seus dados. Se houver qualquer diferença, aparece um aviso acima do resultado.
Como ficam as strings de várias linhas?
Uma string com quebras de linha é escrita como bloco escalar (|), o que a mantém legível. Texto de uma linha só continua em uma linha, a menos que você marque a opção de quebrar texto.
A ordem das chaves muda?
As chaves mantêm a ordem, com uma peculiaridade do JavaScript: chaves que são números inteiros, como "1", vêm primeiro, em ordem numérica. Marque Ordenar chaves para ordenar todos os níveis alfabeticamente.
E os números muito grandes?
Inteiros maiores que 9.007.199.254.740.991 são escritos exatamente como foram digitados, sem arredondamento. Números decimais com mais de cerca de 17 dígitos significativos são arredondados para o valor mais próximo que um double consegue representar.