Ferramentas
PT

Conversor de XML para JSON

Cole o XML e obtenha o JSON na hora. Atributos, texto e elementos repetidos são convertidos com regras simples e previsíveis, e as opções permitem controlar arrays, tipos de valores e prefixos de namespace.

XML

JSON

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

Como converter XML em JSON

  1. Cole o XML, arraste um arquivo .xml para o editor ou carregue-o a partir de uma URL. O JSON aparece enquanto você digita.
  2. Ajuste o prefixo de atributos e a chave de texto e decida se quer sempre usar arrays, converter números e booleanos ou ignorar prefixos de namespace.
  3. Copie o JSON ou baixe-o como arquivo .json.

Como o XML é mapeado para JSON

XMLJSON
<name>Ada</name>"name": "Ada"
<price>9.90</price>"price": 9.90 – dígitos mantidos exatamente
<item id="7">Pen</item>"item": {"@id": 7, "#text": "Pen"}
<tag>a</tag><tag>b</tag>"tag": ["a", "b"]
<note/>"note": null
<![CDATA[a < b]]>o texto "a < b"
<soap:Body> com Ignorar prefixos de namespace"Body"

Por que “Sempre usar arrays” é importante

Um elemento que aparece uma vez vira um valor único, mas quando aparece duas vezes vira um array. O código que lê o JSON precisa então lidar com os dois formatos – um bug clássico quando uma lista às vezes contém só um item. Marque Sempre usar arrays para elementos filhos para ter arrays em todo lugar: a estrutura fica previsível ao custo de alguns colchetes a mais.

XML para JSON no código

Perguntas frequentes

A conversão é sem perdas?

Nomes de elementos, atributos e texto são mantidos, e os números conservam exatamente os mesmos dígitos. Comentários, instruções de processamento e a posição do texto entre elementos filhos (conteúdo misto) não podem ser representados em JSON.

Posso converter JSON de volta para XML?

Sim, com o conversor de JSON para XML do nosso site irmão JSON Formatter, que usa as mesmas convenções @ e #text.

O que acontece com os namespaces?

Nomes com prefixo, como soap:Body, são mantidos como chaves por padrão, e as declarações xmlns aparecem como atributos. Marque Ignorar prefixos de namespace para obter nomes simples como Body, sem as declarações.

Por que um valor vira string em vez de número?

Valores como 007 ou 1,000 não são números decimais simples, então continuam como strings para evitar perda de dados. Desmarque Converter números e true/false para manter todos os valores como strings.