Conversor de JSON
Converta entre JSON, YAML, CSV e XML em qualquer direção, com mensagens de erro claras — tudo no seu navegador.
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
- Escolha o formato de entrada em De e o formato de saída em Para.
- Cole seus dados, clique em Abrir arquivo para carregar um, ou clique em Exemplo para ver uma amostra.
- O resultado aparece enquanto você digita. Ajuste a Indentação, o Delimitador do CSV ou o Elemento raiz do XML se precisar.
- 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ê
| Formato | Ponto forte | Uso típico |
|---|---|---|
| JSON | Tipos de dados exatos, aninhamento, suporte universal de parsers | APIs, JavaScript, documentos NoSQL, configuração |
| YAML | Legível para pessoas, comentários, menos pontuação | Kubernetes, Docker Compose, pipelines de CI, Ansible |
| CSV | Tabelas planas, abre em qualquer planilha | Exportações, importações, relatórios, dados entregues a quem não programa |
| XML | Atributos, conteúdo misto, schemas | Serviç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,
42vira número etruevira booleano. Valores como007ou1.50continuam 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.