Converter JSON em YAML JavaScript Object Notation ↔ YAML Ain't Markup Language Grátis Online Seguro
Solte um arquivo JSON e leve YAML. É lido e escrito aqui, no seu navegador, por isso o arquivo não sai do seu aparelho — e o que a conversão mantém, e o que não consegue, está escrito mais abaixo em vez de ficar para descobrir.
Converta o seu arquivo
Solte aqui um arquivo JSON, ou escolha um.
O seu arquivo não sai deste dispositivo. Tudo roda no seu navegador.
Nada é enviado
Converter a partir de JSON
Converter para JSON
De onde vêm estes formatos
O CSV é o mais antigo e o menos normalizado: uma tabela escrita em linhas de texto, em uso desde os anos setenta e só descrito por escrito em 2005, quando cada programa já decidira por si qual era o delimitador e quando pôr aspas. O XML saiu do SGML em 1998, para documentos que têm de levar estrutura estrita e ser verificados contra um esquema. O JSON foi retirado do JavaScript por Douglas Crockford por volta de 2001, reduzido de propósito a objetos, listas, números e cadeias — e esse despojamento é a razão de ter conquistado a web. O YAML é o seu primo legível, onde a indentação faz o trabalho que em outros lugares cabe às chavetas. Ao converter entre eles só importa uma coisa: o CSV é plano, uma grelha de linhas e colunas, ao passo que JSON, XML e YAML são árvores.
Onde os encontra
O CSV é o que uma planilha exporta e o que lhe entregam um contabilista, uma plataforma de loja ou um extrato bancário. O JSON é o que os serviços web falam e aquilo em que cada vez mais se escrevem os arquivos de configuração. O XML sobrevive em sistemas empresariais antigos, nas normas de faturação e dentro dos próprios formatos de escritório. O YAML é onde as pessoas escrevem definições à mão. Converter entre eles é o trabalho diário de levar os dados de onde foram produzidos para onde são precisos.
Perguntas frequentes
O meu CSV abriu como uma única coluna no Excel. Porquê?
Porque a sua planilha esperava outro aba. O Excel segue o aba de listas das definições regionais, que é o ponto e vírgula em toda a parte onde a vírgula já é o sinal decimal — ou seja, em boa parte da Europa continental. Um arquivo separado por vírgulas aparece então como uma só coluna de texto. Use a caixa de importação e indique o aba, em vez de abrir o arquivo com duplo clique. A mesma definição regional explica que 3.5 chegue por vezes transformado em data.
Por que o meu JSON aninhado não dá uma planilha arrumada?
Porque uma planilha é plana e o JSON é uma árvore. Uma linha leva um valor por coluna; um objeto JSON pode conter uma lista dentro de um campo dentro de outra lista. Converter é escolher como achatar isso: ou juntar os nomes aninhados num cabeçalho de coluna comprido, ou repetir a linha-mãe uma vez por cada filha. Ambas são cedências, e nenhuma se desfaz automaticamente — por isso voltar da planilha à forma original costuma exigir uma decisão humana.
O arquivo perde qualidade?
Depende do que os dois formatos conseguem guardar. Converter entre formatos que armazenam a mesma coisa — um PNG para BMP, um WAV para FLAC — não perde nada. Converter para um formato que descarta informação para poupar espaço, como JPEG ou MP3, perde um pouco de cada vez, e voltar atrás não a traz de volta. Onde existe escolha, esta página tende a conservar a qualidade original em vez de fazer o arquivo menor.
O meu arquivo é enviado para algum lado?
Não. A conversão acontece dentro do seu navegador, na sua própria máquina; o arquivo nunca sai dela e aqui não existe servidor nenhum que o pudesse receber. É por isso que um arquivo grande é limitado pela sua memória e não por um envio, e que nada do que converter pode aparecer nos registros de quem quer que seja — incluindo os nossos. As ferramentas de áudio e de vídeo buscam, porém, o seu motor de conversão neste site da primeira vez que as usar — uns trinta megabytes, uma só vez; depois o trabalho continua a acontecer inteiramente na sua máquina.
Por que as pessoas convertem JSON em YAML
O JSON é a notação que os programas adoram: rigorosa, compacta e entendida por toda linguagem. Mas não é gentil com as pessoas. Um arquivo JSON longo é uma moita de chaves, colchetes, aspas e vírgulas, sem lugar para um comentário e com uma vírgula final que pode quebrar tudo. O YAML é a notação que as pessoas escolhem quando precisam ler e editar dados à mão. Ele usa indentação em vez de chaves, permite comentários e se lê quase como um esquema de tópicos, e é por isso que virou o favorito para configuração: pipelines de build, definições de contêineres, arquivos de implantação, configurações de sites estáticos e ferramentas de documentação. Quando os dados chegam como JSON e você quer trabalhar com eles numa forma agradável de ler, é preciso uma conversão. É por isso que as pessoas convertem JSON em YAML.
As situações são cotidianas. Um desenvolvedor que tem a saída de uma ferramenta em JSON e quer transformá-la num arquivo de configuração. Uma equipe que está movendo configurações de um sistema para outro e prefere um formato legível. Um redator que quer ler a estrutura da resposta de uma API sem a confusão. Um estudante que quer ver como as chaves correspondem à indentação. Em todos os casos os dados são os mesmos, e só a notação muda.
Esta página converte JSON em YAML no seu navegador. O seu arquivo é lido e escrito aqui, então nunca sai do seu dispositivo, o que importa para arquivos de configuração, que muitas vezes contêm endereços, nomes de sistemas internos e às vezes segredos. E a página diz com antecedência o que a travessia preserva e o que não pode preservar, em vez de deixar você descobrir. Abaixo você verá como a conversão funciona, o que acontece com aninhamento profundo e textos longos e como obter um resultado arrumado.
Como a conversão funciona
As mesmas formas nas duas notações
O seu JSON é lido dentro do seu navegador, e a sua estrutura é escrita como YAML. Os dois guardam as mesmas formas, e tudo é mantido nos dois sentidos: mapas, listas, textos, números, booleanos e nulo. Um objeto em JSON vira um mapeamento em YAML, uma matriz vira uma sequência, e os valores escalares mantêm os seus tipos. Uma chave port com o número 8080 dá port: 8080, e uma chave enabled com true dá enabled: true.
As estruturas repetidas são escritas por extenso
O YAML tem um jeito de evitar a repetição, com âncoras e apelidos. O conversor não o usa. As estruturas repetidas são escritas por extenso em vez de como âncoras, de modo que o arquivo se lê direto de cima a baixo. Isso deixa o YAML um pouco mais longo, mas nada nele precisa ser procurado em outro lugar, e qualquer leitor entende cada bloco por si só.
As chaves mantêm a ordem
As chaves mantêm a ordem que o JSON tinha. O YAML se lê na mesma sequência da fonte, então quem conhece o JSON se orienta na hora.
O que é mantido
Tudo o que é dado
Tudo é mantido, nos dois sentidos: mapas, listas, textos, números, booleanos e nulo. Se era um valor no seu JSON, é um valor no YAML, com o mesmo tipo.
Textos que precisam de proteção
Alguns textos seriam mal lidos em YAML se escritos sem aspas: a palavra true, um número entre aspas, um texto com dois-pontos. O conversor coloca esses textos entre aspas para que voltem como textos e não virem booleanos ou números. Um texto JSON que diz "true" continua sendo um texto no YAML.
Unicode
Letras acentuadas, símbolos e caracteres de outros alfabetos são mantidos como estão, então um arquivo em vários idiomas continua legível.
O que você deve saber antes de converter JSON em YAML
Aninhamento profundo significa indentação profunda
O YAML põe sentido na indentação, então um valor que acaba muito aninhado vira um arquivo muito indentado: legível, mas não curto. Uma árvore JSON de oito níveis dá linhas que começam longe da margem esquerda. Se isso ficar desajeitado, considere achatar a estrutura na origem.
Os textos longos são quebrados
Os textos longos são quebrados em cerca de cem colunas, o que muda onde caem as quebras de linha sem mudar o valor. Um parágrafo que era uma única linha longa no JSON aparece em várias linhas no YAML, mas é o mesmo texto. Um programa que lê o YAML recebe o texto original.
Comentários não podem ser inventados
O YAML permite comentários, mas o JSON não traz nenhum, então o resultado não tem nenhum. Você pode acrescentar explicações à mão depois, que é um dos principais motivos para ter o arquivo em YAML.
Como converter JSON em YAML aqui
Adicione o seu arquivo
Solte o arquivo JSON na página ou escolha-o no seu dispositivo. Ele é lido dentro do seu navegador e não é enviado.
Converta
Aperte o botão. Um arquivo de tamanho comum leva um instante. Deixe a página aberta até terminar.
Baixe e confira
Baixe o YAML e abra-o num editor de texto. Olhe o início e o fim e confira se a estrutura e os tipos são os que você espera.
Um olhar mais de perto para o JSON e o YAML
Duas notações para os mesmos dados
O JSON foi projetado para ser fácil de ler e escrever por programas. O YAML foi projetado para ser fácil para as pessoas. Eles se sobrepõem tanto que o JSON é quase um subconjunto do YAML, e um leitor de YAML costuma poder ler JSON. Converter JSON em YAML, portanto, não é mudar os dados, mas revesti-los, numa forma que tem lugar para notas e nenhuma confusão de pontuação.
Por que a indentação exige cuidado
Como o YAML depende da indentação, uma linha desalinhada muda o sentido. O conversor escreve a indentação de forma coerente, com espaços e com a mesma largura em cada nível, então o arquivo está correto como produzido. Quando você o editar depois, mantenha a mesma largura e evite tabulações, que o YAML não permite na indentação.
Legível mas nem sempre mais curto
O YAML costuma ser descrito como mais compacto que o JSON, porque dispensa as chaves e as aspas em volta das chaves de dados. Para dados planos isso é verdade. Para dados muito aninhados, a indentação pode deixá-lo mais longo em caracteres. O ganho está na legibilidade, não no tamanho.
Situações comuns em detalhe
Transformando a saída de ferramentas em configuração
As ferramentas costumam imprimir suas configurações ou resultados como JSON. Converta JSON em YAML, acrescente comentários e guarde-o como o arquivo de configuração que as pessoas mantêm.
Movendo configurações entre sistemas
Mover uma configuração de um sistema que usa JSON para um que usa YAML é questão de uma conversão, seguida de uma conferência de que o destino aceita as chaves.
Lendo a resposta de uma API
A resposta de uma API pode chegar a centenas de linhas de chaves. Em YAML, os mesmos dados se leem como um esquema de tópicos, e você vê a estrutura de relance.
Ensino e documentação
Mostrar os mesmos dados nas duas notações é uma boa maneira de ensinar como funcionam os dados estruturados. A documentação que usa exemplos em YAML costuma ser mais fácil de ler.
Conselhos práticos antes de converter JSON em YAML
Confira se o JSON é válido
Uma vírgula sobrando ou uma aspa faltando vai parar a conversão. Se a página informar um erro, abra o arquivo num editor que destaca problemas de JSON e corrija a linha indicada.
Achate onde puder
Se a estrutura é mais profunda do que precisa, simplifique-a primeiro. Uma estrutura mais plana dá um YAML mais fácil de ler e editar.
Pense em quem vai consumir
Olhe o que vai ler o YAML. Algumas ferramentas esperam nomes de chaves e tipos particulares, e é mais fácil ajustar o JSON de antemão do que editar o YAML depois.
Arquivos grandes
Tudo roda no seu dispositivo, então um arquivo muito grande precisa de memória. Para arquivos de muitos megabytes, use um computador e divida os dados se a página tiver dificuldade.
Perguntas que as pessoas fazem antes de converter
Os meus dados serão alterados?
Não. Tudo é mantido nos dois sentidos: mapas, listas, textos, números, booleanos e nulo.
Por que os meus textos longos são divididos em várias linhas?
Os textos longos são quebrados em cerca de cem colunas. Isso muda onde caem as quebras de linha sem mudar o valor.
Por que o meu arquivo está tão indentado?
Porque os dados são muito aninhados, e o YAML expressa o aninhamento pela indentação.
Onde estão as âncoras?
As estruturas repetidas são escritas por extenso em vez de como âncoras, de modo que o arquivo se lê direto de cima a baixo.
O meu arquivo é enviado?
Não. A conversão roda no seu navegador e o arquivo nunca sai do seu dispositivo.
Posso voltar para JSON?
Sim. YAML para JSON lê o arquivo de volta, embora os comentários que você acrescentou não sobrevivam.
Escolhendo bem ao converter JSON em YAML
O YAML é mesmo necessário?
Se a ferramenta receptora lê JSON, mantenha o JSON. Converta quando as pessoas precisam ler e editar o arquivo, ou quando a ferramenta exige YAML.
Outros destinos
Se o destino é um arquivo de marcação, JSON para XML pode vir em seguida. Para tabelas, JSON para CSV e JSON para XLSX atendem às planilhas.
Guarde o JSON
O JSON é o original se vem de um programa. Guarde-o e gere o YAML de novo quando ele mudar.
Obtendo um bom resultado depois da conversão
Acrescente comentários
O resultado não tem nenhum, e é aí que o YAML brilha. Acrescente uma nota curta acima de cada bloco para dizer o que ele faz e que valores são permitidos.
Confira os tipos
Olhe valores como versões, códigos e indicadores. Confira se são textos onde você queria textos e números onde queria números.
Mantenha a indentação coerente
Ao editar, use espaços e mantenha a mesma largura em cada nível. Um editor que mostra os espaços em branco e confere o YAML poupa você de erros.
Preparando o seu JSON para converter bem
Mantenha-o regular
Quando você converte JSON em YAML, os dados regulares convertem melhor: chaves coerentes e tipos claros. Dados irregulares dão um resultado correto mas desarrumado.
Dê nomes claros às chaves
As pessoas vão ler o YAML, então escolha chaves que digam o que significam. Uma configuração é mais fácil de manter quando os nomes são simples.
Teste primeiro num pedaço pequeno
Se o seu arquivo é grande, leve uma seção para um arquivo de teste e converta essa. Uma olhada rápida no resultado mostra se a estrutura é a que você espera.
Trabalhando com o YAML depois de converter JSON em YAML
Acrescente as notas que o JSON não podia guardar
A primeira coisa a fazer com um arquivo recém-convertido é lê-lo do início e acrescentar comentários onde um estranho ficaria perplexo. Uma linha curta acima de uma seção dizendo o que ela controla vale mais que uma página de documentação guardada em outro lugar, porque fica ao lado da coisa que descreve. Essa é a principal vantagem que você ganha ao converter JSON em YAML.
Agrupe configurações relacionadas
As chaves mantêm a ordem que tinham no JSON, que pode ser a ordem em que um programa por acaso as emitiu. Em YAML você é livre para reorganizá-las de modo que as configurações relacionadas fiquem juntas, com uma linha em branco entre os grupos. Como a ordem das chaves num mapeamento não tem sentido para a maioria dos leitores, isso é seguro, mas confira a ferramenta que você usa, caso ela se importe.
Confira o que a ferramenta receptora espera
Um arquivo YAML válido não é necessariamente uma configuração válida. As ferramentas esperam chaves e tipos particulares, e algumas são rígidas quanto a chaves desconhecidas. Depois da conversão, compare o arquivo com a documentação da ferramenta e rode o verificador dela, se tiver um.
Use controle de versão
A configuração em YAML é fácil de comparar linha a linha, o que a torna adequada ao controle de versão. Faça o commit do arquivo convertido e deixe os colegas verem cada mudança como uma diferença clara, o que era muito mais difícil com uma única linha de JSON minificado.
Atenção aos segredos
O JSON exportado de ferramentas às vezes inclui tokens e senhas. Como a conversão acontece no seu navegador, nada sai do seu dispositivo, mas o arquivo YAML conterá os mesmos segredos. Remova-os, ou mova-os para um lugar mais seguro, antes de fazer o commit ou de compartilhar o arquivo.
Atenção à indentação ao editar
Quando você começa a editar à mão, o principal risco é uma linha que está um espaço fora do lugar. Use um editor que mostra os espaços em branco e confere o YAML enquanto você digita, e mantenha a mesma largura em cada nível, como fez o conversor.
Converta de novo quando a fonte mudar
Se o JSON é produzido por um programa e muda de tempos em tempos, converta JSON em YAML de novo a cada versão nova e junte os seus comentários do arquivo antigo ao novo. Uma ferramenta de comparação faz disso uma questão de minutos.
Privacidade e manuseio
Por que a conversão local importa para configuração
Os arquivos de configuração costumam conter endereços, nomes de sistemas internos e às vezes chaves e senhas. Muitos conversores on-line enviam o seu arquivo a um servidor, processam e devolvem o resultado, e por um tempo uma cópia fica numa máquina que você não controla. Aqui o seu próprio navegador faz o trabalho, então o arquivo fica no seu dispositivo.
O que acontece quando você sai
Quando você fecha a página, o arquivo convertido desaparece do navegador, então baixe-o antes. Nada sobre o seu arquivo é guardado.
Se algo der errado
A página diz que o arquivo não é um JSON válido
Pode haver uma vírgula sobrando, uma aspa faltando ou um colchete que não fecha. Abra o arquivo num editor que destaca erros de JSON e corrija a linha indicada.
A ferramenta rejeita o YAML
Confira os nomes das chaves e os tipos que ela espera. O YAML é válido, mas a ferramenta pode querer nomes diferentes ou uma estrutura diferente.
A página trava com um arquivo grande
Tudo roda no seu dispositivo, e um arquivo grande precisa de memória. Tente de novo num computador, ou divida os dados.
Ferramentas relacionadas
A mesma família de ferramentas cobre os trabalhos vizinhos. Para voltar, use YAML para JSON. Para marcação, JSON para XML e XML para JSON convertem entre esses dois. Para tabelas, há JSON para CSV, CSV para JSON, JSON para XLSX e XLSX para JSON.
Um exemplo resolvido
Digamos que uma ferramenta imprime suas configurações como um arquivo JSON de 150 linhas, e você quer guardá-las no seu repositório como uma configuração que os colegas possam ler e comentar. Você solta o arquivo aqui e aperta o botão. Um instante depois baixa um YAML de cerca de 90 linhas em que a estrutura se lê como um esquema de tópicos. Você acrescenta um comentário acima de cada seção, faz o commit e diz à equipe onde editar. O JSON continua como a saída da ferramenta.
Uma lista de conferência curta
Antes de converter
Confira se o JSON é válido. Simplifique o aninhamento profundo se puder. Guarde o JSON.
Durante a conversão
Fique na página até o arquivo ficar pronto.
Depois de converter
Abra o YAML, confira a estrutura e os tipos, acrescente comentários e teste-o com a ferramenta que vai lê-lo.
Erros comuns
Esperar um arquivo mais curto
Aninhamento profundo faz indentação profunda. O YAML é mais legível, nem sempre menor.
Editar com tabulações
O YAML não permite tabulações na indentação. Use espaços.
Perder a fonte
Se o JSON vem de um programa, guarde-o e gere o YAML de novo quando ele mudar.
Seu arquivo fica no seu dispositivo
A conversão acontece localmente. Seu arquivo é lido pelo seu próprio navegador, reescrito ali e devolvido como YAML. Nada é enviado, então nenhuma cópia acaba num servidor e ninguém mais pode lê-lo. Para configuração com conteúdo privado, essa é a forma segura de converter JSON em YAML.
Resumo
Para converter JSON em YAML aqui, solte o arquivo e aperte o botão. Ele é lido e escrito no seu navegador, então o arquivo nunca sai do seu dispositivo. Tudo é mantido, nos dois sentidos: mapas, listas, textos, números, booleanos e nulo. As estruturas repetidas são escritas por extenso em vez de como âncoras, de modo que o arquivo se lê direto de cima a baixo. O YAML põe sentido na indentação, então um valor que acaba muito aninhado vira um arquivo muito indentado, legível mas não curto. Os textos longos são quebrados em cerca de cem colunas, o que muda onde caem as quebras de linha sem mudar o valor. As chaves mantêm a ordem que o JSON tinha.