🔀Conversor de JSON para XML
Cole um JSON e converta para XML pronto para copiar, com indentação de 2 espaços e a declaração <?xml version="1.0"?> no topo. Cada chave do objeto vira um elemento; itens de array repetem a tag do campo pai.
Processamento 100% local no navegador — o JSON colado não é enviado a nenhum servidor.
🔒 Cálculo 100% local — os dados que você digita não saem do seu navegador, nada é enviado a servidores.
Fonte: XML 1.0 (W3C) — escape de entidades e formato de documento — não existe um mapeamento único e universal de JSON para XML — arrays e atributos não têm uma representação padrão; esta ferramenta usa a convenção mais comum (repetir a tag do campo para cada item de array) · Última verificação em 23/09/2026
O conversor percorre o JSON recursivamente: cada chave de objeto vira um elemento XML de mesmo nome, cada item de array repete a tag do campo pai, e valores simples viram texto com &, <, >, " e ' escapados. A saída fica dentro de um elemento raiz <root>, com declaração XML e indentação de 2 espaços.
Como usar o conversor
- Cole o JSONPode ser um objeto ou um array, com qualquer nível de aninhamento — números, texto, booleanos, null, objetos e arrays.
- Veja o XML geradoO resultado aparece indentado, dentro de um elemento raiz <root>, com a declaração XML na primeira linha.
- Copie o resultadoUse o botão copiar para levar o XML formatado para onde precisar — um arquivo de configuração, um payload de integração, ou apenas para inspecionar a estrutura.
Como funciona a conversão
JSON e XML têm modelos de dados estruturalmente diferentes: JSON tem objetos, arrays e valores simples; XML tem elementos, atributos e texto — e não existe uma tradução única e "correta" entre os dois, principalmente para arrays. Esta ferramenta adota a convenção mais comum: cada chave de um objeto vira um elemento XML com o mesmo nome, e cada item de um array repete a tag do campo pai uma vez por item, em vez de criar um elemento contêiner extra.
Para valores simples (texto, número, booleano ou null), o valor vira o conteúdo de texto do elemento. Para evitar que caracteres especiais quebrem o XML, o texto passa por um escape antes de ser inserido: primeiro & vira & (sempre primeiro, para não escapar duas vezes as entidades geradas depois), depois < vira <, > vira >, " vira " e ' vira ' — a mesma lógica de escape usada pela ferramenta de entidades HTML deste site. A saída inteira é envolvida em um elemento raiz
array: {"item":[1,2]} → <item>1</item><item>2</item>
escape: & primeiro, depois < > " '
Exemplo resolvido
Para {"produto": "Caneca", "preco": 29.9, "disponivel": true, "tags": ["casa", "cozinha"]}, o XML gerado fica:
```
Repare que o campo tags, que era um array com dois itens no JSON, virou duas tags
Suposições e limitações
- Não existe um padrão único de conversão JSON↔XML — esta ferramenta usa a convenção de repetir a tag do campo pai para cada item de array, sem criar atributos XML
- Chaves do JSON que não são nomes válidos de elemento XML (começando com número, ou contendo espaços e símbolos) podem gerar um XML tecnicamente inválido — renomeie a chave antes de converter, se for o caso
- Valores null viram um elemento vazio (sem texto dentro)
- A conversão é de mão única: converte JSON para XML, não faz o caminho inverso
- Todo o processamento acontece no navegador — nenhum dado colado é enviado a um servidor
Dicas para tirar o melhor proveito
Como não existe um mapeamento universal entre JSON e XML, use esta ferramenta principalmente para inspecionar rapidamente a estrutura de um JSON em formato de árvore XML, ou para gerar um ponto de partida que você depois ajusta manualmente para o esquema XML exato que seu sistema espera (com atributos, namespaces ou nomes de elemento específicos). Se o XML de destino precisa seguir um esquema (XSD) rígido, trate o resultado aqui como rascunho, não como saída final pronta para produção. Para arrays de objetos, o resultado costuma ficar mais legível que arrays de valores simples, já que cada item vira um bloco de elementos aninhados. Um fluxo que costuma funcionar bem é testar primeiro com um exemplo pequeno, conferir o resultado linha por linha e só então colar o conteúdo completo. Como todo o processamento é 100% local, você pode usar dados reais de trabalho sem preocupação com privacidade, e repetir a conversão quantas vezes precisar, ajustando a entrada até o resultado ficar exatamente como o sistema de destino espera. Guarde também um exemplo válido do formato esperado pelo destino para comparar com a saída gerada.
Erros comuns a evitar
Esperar que a conversão preserve informação suficiente para reconstruir o JSON original sem ambiguidade — como XML não distingue nativamente "um único item" de "array com um item", converter de volta para JSON exigiria regras adicionais que esta ferramenta não aplica. Outro erro é usar chaves JSON com espaços ou caracteres especiais esperando um XML válido: nomes de elemento XML têm regras próprias (não podem começar com número, por exemplo), e a ferramenta não renomeia essas chaves automaticamente.
Também vale lembrar que valores numéricos e booleanos do JSON (como true, false, 29.9) viram texto simples no XML — o tipo original não é preservado por uma tipagem própria do XML, apenas pelo conteúdo textual do elemento.
Veja também
Se esta ferramenta foi útil, você também pode precisar destas relacionadas: Formatador e validador de JSON, Validador de XML, Conversor de JSON para YAML, Formatador de XML.
Ferramentas relacionadas
🧾Formatador e validador de JSON
Cole um JSON, formate com indentação, minifique ou descubra exatamente onde está o erro.
Abrir ferramenta →📋Validador de XML
Verifique se um XML está bem formado (well-formed).
Abrir ferramenta →📄Conversor de JSON para YAML
Cole um JSON e converta para YAML legível, com aspas automáticas onde forem necessárias.
Abrir ferramenta →🧩Formatador de XML
Indente um XML com 2 espaços por nível ou minifique em uma única linha.
Abrir ferramenta →Perguntas frequentes
Como um array do JSON vira XML?
Cada item do array repete a tag do campo pai. Por exemplo, {"tags":["a","b"]} vira <tags>a</tags><tags>b</tags>, em vez de um único elemento com uma lista dentro — é a convenção mais comum, já que XML não tem um tipo array nativo.
Por que não existe uma conversão "oficial" de JSON para XML?
Porque os dois formatos têm modelos de dados diferentes: XML tem elementos, atributos e texto, enquanto JSON tem objetos, arrays e valores simples. Não há uma regra única sobre, por exemplo, se um array deve virar atributos, elementos repetidos ou um elemento contêiner — diferentes bibliotecas fazem essa escolha de formas diferentes.
Caracteres especiais como & e < quebram o XML gerado?
Não, porque são escapados automaticamente: & vira &, < vira <, > vira >, aspas duplas viram " e aspas simples viram '. Isso mantém o XML válido mesmo quando o texto original tem esses símbolos.
A ferramenta também converte XML de volta para JSON?
Não. Esta ferramenta converte apenas em uma direção, de JSON para XML. Como XML e JSON não têm um mapeamento 1:1 garantido, o caminho inverso exigiria decisões adicionais sobre como interpretar elementos repetidos e atributos.
O XML gerado é enviado para algum servidor?
Não. Toda a conversão acontece no seu navegador com JavaScript puro — o JSON colado e o XML gerado não saem do seu computador.
Explore mais ferramentas gratuitas
Dezenas de calculadoras, conversores e geradores — todos funcionam no navegador, sem cadastro e sem instalar nada.