Conversor XML ↔ JSON 🔒 Seus dados nunca saem do seu navegador.

Converta XML para JSON e vice-versa, direto no seu navegador.

Atributos viram chaves @ · tags repetidas viram arrays

Ctrl+SBaixar

Sobre esta ferramenta

XML aparece em APIs SOAP, feeds RSS/Atom, layouts do Android e inúmeros sistemas corporativos legados, enquanto JSON é a escolha moderna padrão. Este conversor faz a ponte entre eles: atributos viram chaves @name, um nó de texto junto com atributos vira #text, e qualquer tag repetida sob o mesmo pai vira um array JSON — a mesma convenção usada por bibliotecas populares de XML para JSON, então a saída parece familiar.

A conversão roda pelo DOMParser nativo do seu navegador — nenhuma biblioteca XML é baixada, e nenhum dado é enviado para lugar nenhum. No sentido inverso, chaves JSON que começam com @ viram atributos e arrays viram tags irmãs repetidas, então um round-trip cuidadoso preserva sua estrutura.

Perguntas frequentes

O que o prefixo @ e os arrays realmente significam no JSON convertido?

Atributos XML viram chaves JSON com prefixo @ (então `<item id="1">` vira `{"@id": "1"}`), e qualquer tag que se repita sob o mesmo pai vira um array JSON em vez de se sobrescrever — é assim que `<item>Milk</item><item>Eggs</item>` vira `["Milk", "Eggs"]`.

Esta ferramenta entende namespaces XML, seções CDATA, comentários ou instruções de processamento?

Só parcialmente. Tags com namespace mantêm seu prefixo bruto (ex. `ns:tag`) em vez de resolver a URI do namespace, o conteúdo CDATA é lido como texto simples, e comentários/instruções de processamento são descartados por completo. É um conversor pragmático para arquivos típicos de configuração e dados, não uma implementação completa da especificação XML — evite usá-lo em XML que dependa de namespaces ou DTDs para funcionar corretamente.

Se eu converter XML para JSON e de volta para XML, obterei exatamente o mesmo documento?

Bem próximo, mas não byte a byte. A ordem e os valores de elementos e atributos fazem o round-trip corretamente, mas comentários originais, envoltórios CDATA, o estilo de tags autofechadas e os espaços exatos entre tags não são preservados — a saída é semanticamente equivalente, não uma cópia idêntica.

Meu XML ou JSON é enviado para algum lugar ao usar isto?

Não. A análise usa o DOMParser nativo do seu navegador e o JSON.parse — ambos rodam inteiramente no seu dispositivo. Nada que você cola ou solta aqui é enviado a um servidor.

Como transformo um array JSON de volta em tags XML repetidas?

Dê ao objeto pai do array uma chave cujo valor seja um array JSON — ex. `{"item": ["Milk", "Eggs"]}` — e ao mudar para o modo JSON → XML será gerado um elemento `<item>` para cada entrada do array. Use o campo "Nome do elemento raiz" se o nível superior do seu JSON for um array ou tiver mais de uma chave, já que XML precisa de uma única tag raiz.