Ferramentas
PT

Conversor de JSON para XML

Cole o JSON para obter um XML bem-formado na hora. Escolha o elemento raiz, o prefixo de atributos e a indentação – a conversão segue regras simples e previsíveis.

JSON → XML

JSON

XML

Privado: seus dados são processados no próprio navegador e nunca são enviados a nenhum servidor.

Como converter JSON para XML

  1. Cole o JSON ou abra um arquivo .json. O XML aparece ao lado enquanto você digita.
  2. Defina o nome do elemento raiz (ou deixe em branco para usar a única chave de nível superior), o prefixo de atributos e a indentação.
  3. Copie o XML ou baixe-o como arquivo .xml.

Como o JSON é mapeado para XML

JSONXML
{"name": "Ada"}<name>Ada</name>
{"@id": "7"}atributo id="7" no elemento pai
{"#text": "Hello"}conteúdo de texto do elemento pai
{"tag": ["a", "b"]}<tag>a</tag><tag>b</tag>
{"note": null}<note/>
{"2nd key": 1}<_2nd_key>1</_2nd_key> – nomes inválidos são corrigidos
array de nível superior [1, 2]<root><item>1</item><item>2</item></root>
&, <, > no texto&amp;, &lt;, &gt;

JSON vs XML: quais são as diferenças

O JSON tem arrays, números, booleanos e null; o XML tem apenas elementos, atributos e texto, então os tipos não são preservados: 42 e "42" viram o mesmo texto 42. O XML, por sua vez, tem atributos, namespaces e conteúdo misto, que faltam no JSON. Se você pretende converter o XML de volta para JSON depois, mantenha as convenções comuns usadas aqui – @ para atributos e #text para conteúdo de texto –, que a maioria dos conversores entende.

Perguntas frequentes

Como os arrays JSON são convertidos para XML?

Cada item vira um elemento com o nome da chave do array, então {"book": [ … ]} vira vários elementos <book>. Os itens de um array de nível superior viram elementos <item> dentro da raiz.

Como criar atributos XML a partir de JSON?

Coloque @ antes da chave: {"user": {"@id": 7, "name": "Ada"}} vira <user id="7"><name>Ada</name></user>. Você pode mudar o prefixo nas opções.

O que acontece com chaves que não são nomes XML válidos?

Caracteres que nomes XML não podem conter, como espaços, são substituídos por sublinhados (_), e nomes que começam com um dígito ou com “xml” ganham um sublinhado na frente: "2nd key" vira <_2nd_key>.

O XML gerado é válido?

Sim. Caracteres especiais são escapados, todo nome de elemento é válido e o documento tem exatamente um elemento raiz, com uma declaração XML opcional no topo.