Texto 🔒 Roda no seu navegador — nenhum dado é enviado

Conversor de JSON

Converta entre JSON, YAML, CSV e XML em qualquer direção, com mensagens de erro claras — tudo no seu navegador.

Entrada
Saída

Conversor de JSON - JSON para YAML, CSV e XML e vice-versa

Cole JSON, YAML, CSV ou XML, escolha o formato de que você precisa, e a versão convertida aparece enquanto você digita. Todas as direções funcionam: JSON para YAML para um manifesto do Kubernetes, YAML para JSON para uma chamada de API, JSON para CSV para uma planilha, CSV para JSON para um script de importação e XML para JSON quando um serviço antigo ainda fala XML. A leitura e a conversão rodam no seu navegador, então arquivos de configuração e exportações de clientes nunca saem do seu dispositivo.

A ferramenta foi feita para os arquivos reais que as pessoas colam: CSV exportado do Excel com ponto e vírgula e marca de ordem de bytes, JSON com objetos aninhados que precisam caber em colunas, XML cheio de atributos. Quando a entrada está quebrada, ela diz onde, com linha e coluna, em vez de falhar em silêncio.

Como converter

  1. Escolha o formato de entrada em De e o formato de saída em Para.
  2. Cole seus dados, clique em Abrir arquivo para carregar um, ou clique em Exemplo para ver uma amostra.
  3. O resultado aparece enquanto você digita. Ajuste a Indentação, o Delimitador do CSV ou o Elemento raiz do XML se precisar.
  4. Clique em Copiar ou Baixar, e use o botão ⇄ para mandar o resultado de volta na direção contrária.

Qual formato serve para quê

FormatoPonto forteUso típico
JSONTipos de dados exatos, aninhamento, suporte universal de parsersAPIs, JavaScript, documentos NoSQL, configuração
YAMLLegível para pessoas, comentários, menos pontuaçãoKubernetes, Docker Compose, pipelines de CI, Ansible
CSVTabelas planas, abre em qualquer planilhaExportações, importações, relatórios, dados entregues a quem não programa
XMLAtributos, conteúdo misto, schemasServiços SOAP, feeds RSS, documentos de escritório, sistemas corporativos mais antigos

JSON para CSV: achatando dados aninhados

Um arquivo CSV é uma tabela plana, enquanto o JSON pode aninhar objetos dentro de objetos. O conversor achata cada registro: um objeto aninhado vira nomes de coluna com ponto, como address.city, e um array recebe um índice, como em tags.0 e tags.1. As colunas são a união de todas as chaves encontradas, na ordem em que aparecem pela primeira vez, então um registro sem algum campo simplesmente deixa aquela célula vazia. Valores que contêm o delimitador, aspas ou uma quebra de linha são colocados entre aspas e escapados como descreve a RFC 4180, que é o que o Excel, o Google Sheets e as ferramentas de importação de bancos de dados esperam.

No caminho de volta, CSV para JSON lê a primeira linha como nomes de coluna e transforma cada uma das outras linhas em um objeto. Marque Aninhar colunas com ponto no nome e address.city volta a ser um objeto aninhado, então um arquivo JSON pode fazer a ida e volta por uma planilha.

Detalhes do CSV que costumam dar errado

  • Delimitador: deixado em Automático, o conversor olha a primeira linha e escolhe vírgula, ponto e vírgula, tabulação ou barra vertical. Exportações do Excel europeu usam ponto e vírgula, e a detecção dá conta delas.
  • Campos entre aspas: vírgulas e quebras de linha dentro de aspas continuam fazendo parte do valor, e aspas duplicadas "" viram uma só.
  • Marca de ordem de bytes: o caractere invisível que o Excel coloca no início de um CSV em UTF-8 é removido, então o nome da primeira coluna sai limpo.
  • Números e booleanos: com Detectar números e true/false marcado, 42 vira número e true vira booleano. Valores como 007 ou 1.50 continuam como texto, porque transformá-los em números descartaria o zero à esquerda ou o último dígito.

JSON e YAML

YAML é um superconjunto de JSON, então todo documento JSON vira YAML sem perda. É na direção contrária que moram as surpresas: em alguns parsers, o YAML transforma yes, no, datas e números de versão sem aspas em outros tipos. Este conversor lê YAML com o core schema do YAML 1.2, em que só true, false, números e null são especiais, então uma data como 2024-01-01 continua texto. Ao escrever YAML, ele coloca entre aspas qualquer string que outro parser poderia interpretar errado, como 'yes', 'on' ou '1.10'. Comentários e âncoras não têm equivalente em JSON: âncoras e chaves de mesclagem << são expandidas em cópias completas, e os comentários são descartados.

JSON e XML

O XML tem coisas que o JSON não tem, então o conversor segue uma convenção comum. Um atributo vira uma chave que começa com @, o texto que fica ao lado de elementos filhos vira #text, e um elemento que se repete vira um array. Assim, <book id="b1"><title>Clean Code</title></book> se transforma em {"book": {"@id": "b1", "title": "Clean Code"}}. As mesmas regras são aplicadas ao contrário quando você converte JSON em XML, e chaves que não são nomes XML válidos têm os caracteres inválidos trocados por sublinhados. Se o JSON tiver mais de uma chave no nível superior, defina o Elemento raiz para dar nome ao elemento que envolve tudo.

Mensagens de erro que ajudam de verdade

Um conversor que mostra uma caixa vazia quando a entrada está quebrada faz você perder tempo. Este diz o que deu errado e onde: JSON inválido é apontado com a linha e a coluna do primeiro caractere que não pode estar ali, erros de YAML vêm com o motivo dado pelo parser, e XML mal formado é apontado com a sua posição. Um campo CSV cujas aspas de abertura nunca são fechadas também é sinalizado, porque senão ele engoliria o resto do arquivo.

Privacidade

Nada é enviado a lugar nenhum. O parser de YAML é carregado uma vez, quando você escolhe YAML pela primeira vez, e todo o resto é JavaScript comum na própria página. Isso torna a ferramenta segura para arquivos de ambiente, respostas de API com tokens e exportações que contêm dados pessoais.

Ferramentas relacionadas

Para validar ou embelezar o JSON antes de convertê-lo, use o formatador de JSON. Para comparar duas versões de um arquivo de configuração, use o Comparador de textos. Para uma única direção, as páginas de tarefa abrem o conversor já pronto: JSON para YAML, JSON para CSV e XML para JSON. Para transformar o JSON em interfaces TypeScript, structs em Go ou modelos Python, use o JSON para Tipos.