YAML para JSON: conversor (e JSON para YAML)

Com este conversor de YAML para JSON, você transforma YAML em JSON e também JSON em YAML. A conversão segue o YAML 1.2: objetos aninhados, listas, blocos de texto de várias linhas, âncoras com aliases e vários documentos são entendidos. Os erros indicam a linha e seus dados não saem do navegador.

Fonte: YAML Language Specification, Version 1.2.2 (Syntax, Core-Schema, Skalar-Typen). Atualizado em: .

Em YAML → JSON valem as quatro opções. Em JSON → YAML são usados 4 espaços, se escolhido, ou senão 2 espaços.
Ordena alfabeticamente as chaves de cada objeto. Sem esta opção, a ordem da entrada é mantida.
Minha caixa de ferramentasSeus dados ficam salvos só neste navegador.

O texto é processado apenas no seu navegador. Vários documentos YAML separados por --- geram uma lista JSON.

Seu texto fica no seu navegador: não é enviado, não é salvo e não aparece no endereço da página.

Resultado

Resultado
{ "nome": "Meu app", "versao": 1.2, "ativo": true, "servidor": { "host": "localhost", "portas": [ 80, 443 ] }, "etiquetas": [ "web", "api" ], "descricao": "Texto de várias linhas\né preservado.\n" }
Tamanho
17 linhas, 246 caracteres.

Como o cálculo é feito

YAML é um formato de dados legível para configuração, usado por exemplo no Docker Compose, Kubernetes, GitHub Actions ou OpenAPI. O JSON é entendido por quase todas as linguagens e APIs. Esta ferramenta converte nos dois sentidos.

Como converter YAML em JSON

  1. Escolha acima a direção “YAML → JSON”.
  2. Cole seu YAML ou toque em “Texto de exemplo”.
  3. Copie o JSON ou baixe-o. “Resultado como entrada” inverte a direção para conferir se o resultado volta a dar a mesma coisa.

O que é suportado

Objetos e listas aninhados, valores entre colchetes e chaves, texto entre aspas simples e duplas (também em várias linhas), blocos de texto com | e > incluindo chomping, comentários, âncoras com aliases e chaves de mesclagem (<<), vários documentos com --- e as tags !!str, !!int, !!float, !!bool e !!null.

Tipos conforme o YAML 1.2

Limites

Chaves complexas (? ), tags próprias e âncoras em chaves não são suportadas; você recebe uma mensagem de erro em vez de uma leitura errada silenciosa. Comentários se perdem na conversão para JSON, pois o JSON não os tem. XML não é convertido aqui. Em JSON → YAML, números acima de 2^53 perdem precisão no analisador JSON do navegador, e chaves numéricas sempre vêm primeiro no JSON.

Seu texto fica no seu navegador e não é enviado nem guardado.

Perguntas frequentes

Como converto YAML em JSON?

Escolha a direção “YAML → JSON” e cole o YAML. O JSON aparece na hora e você pode copiá-lo ou baixá-lo. Se houver erro, a mensagem indica a linha.

Por que “yes” não vira true?

Porque esta ferramenta usa o YAML 1.2. Nele, só true e false são booleanos; yes, no, on e off continuam sendo texto. O YAML 1.1 os tratava como booleanos, o que causava erros (o problema do “NO” da Noruega).

Os comentários se perdem?

Sim, ao converter para JSON, porque o JSON não tem comentários. No outro sentido o YAML fica sem comentários, pois o JSON não contém nenhum.

O que acontece com vários documentos em um arquivo?

Documentos separados por --- são reunidos em uma lista JSON, uma entrada por documento. Um documento único permanece como está.

Como âncoras e aliases são tratados?

Um alias é substituído pelo valor de sua âncora. A chave de mesclagem “<<” insere as chaves de uma âncora; chaves existentes têm prioridade. Aliases extremamente ramificados são rejeitados como abuso.

Minha entrada é enviada?

Não. A conversão acontece no seu navegador; o texto não é enviado, não é guardado e não vai para a barra de endereços.

Fontes e base legal

Última atualização:

Ferramentas relacionadas