Skip to content

Conversor XML para JSON

Cole XML e obtenha JSON instantaneamente. Converte atributos para chaves @_, trata elementos repetidos como arrays. 100% no navegador, nenhum dado enviado, sem cadastro.

Sem rastreamento Roda no navegador Grátis
Opções · 2 espaços · XML → JSON
Indentação
0 caracteres
JSON Saída
0 linhas
Revisado para tratamento de boa formação XML 1.0, correção da convenção @_/#text e precisão de preservação de strings — Go Tools Engineering Team · May 29, 2026

O que é a Conversão XML para JSON e Como Funciona?

XML (Extensible Markup Language) e JSON (JavaScript Object Notation) são ambos formatos de dados estruturados, mas têm modelos fundamentalmente diferentes: XML é uma árvore de elementos com atributos e conteúdo misto (texto intercalado com elementos filhos); JSON é uma árvore de objetos, arrays, strings, números, booleanos e valores null. A conversão entre eles requer um conjunto de convenções para preencher a lacuna.

Esta ferramenta usa a convenção mais amplamente adotada, a mesma usada por bibliotecas populares como fast-xml-parser (Node.js), xmltodict (Python) e JAXB (Java):

**1. Atributos → prefixo @_.** Os atributos XML não têm equivalente direto em JSON. A convenção é representá-los como chaves prefixadas com @_. Então torna-se { "@_id": "42", "@_role": "admin" } dentro do objeto user. Esse prefixo é inequívoco: nenhum nome de elemento XML válido começa com @, então não há colisão com nomes de elementos filhos.

**2. Conteúdo de texto do elemento com atributos → #text.** Quando um elemento tem tanto atributos quanto conteúdo de texto — 29.99 — o texto deve compartilhar o mesmo objeto JSON que os atributos. A convenção é armazená-lo sob a chave #text, produzindo { "@_currency": "USD", "#text": "29.99" }. Elementos com apenas conteúdo de texto e sem atributos convertem para um valor de string simples.

**3. Elementos irmãos repetidos → arrays.** O XML permite múltiplos elementos filhos com o mesmo nome; objetos JSON não podem ter chaves duplicadas. A solução é coletar irmãos com o mesmo nome em um array. Um filho torna-se um único objeto; dois ou mais filhos tornam-se um array de objetos. Este é o detalhe comportamental mais importante para entender: a forma JSON muda com base em quantos irmãos existem no XML.

**4. Sem coerção de tipo — todos os valores permanecem como strings.** O XML não tem um sistema de tipos nativo para conteúdo de texto. Um valor "123" em XML é uma string. Convertê-lo para o número JSON 123 requer fazer uma suposição sobre a intenção do autor — uma suposição que está errada para CEPs ("01234" → 1234), números de telefone, identificadores preenchidos e strings decimais sensíveis à precisão. Esta ferramenta preserva todos os valores como strings. Aplique coerção de tipo no seu próprio código para os campos onde você conhece o tipo.

**5. Com perdas para comentários, instruções de processamento e namespaces.** O XML suporta recursos que o JSON não tem: comentários (), instruções de processamento (), e semântica de namespace. Esses são descartados ou aproximados durante a conversão. Para trabalho XML sem perdas — reformatação, minificação, validação — use o Formatador XML. Para a conversão inversa — construindo XML a partir de JSON — use o Conversor JSON para XML.

**Por que converter XML para JSON?** JSON é o formato nativo do JavaScript e o formato de intercâmbio padrão para APIs REST. Se você recebe XML de um serviço SOAP legado, um feed RSS, um sitemap ou um sistema corporativo, convertê-lo para JSON permite que você trabalhe com os dados usando acesso padrão a objetos JavaScript, consultas JSON path e qualquer banco de dados ou API com reconhecimento de JSON. A conversão é uma ponte unidirecional: útil para consumir dados XML em uma pilha moderna, mas não para preservar ou fazer round-trip de documentos XML.

// Convert XML to JSON in Node.js using fast-xml-parser
import { XMLParser } from 'fast-xml-parser';

const xml = `<catalog>
  <product id="P01">
    <name>Wireless Headphones</name>
    <price currency="USD">79.99</price>
  </product>
</catalog>`;

const parser = new XMLParser({
  ignoreAttributes: false,      // preserve attributes
  attributeNamePrefix: '@_',    // @_ prefix for attributes
  textNodeName: '#text',        // #text for mixed element content
  parseAttributeValue: false,   // no type coercion on attributes
  parseTagValue: false,         // no type coercion on element text
});

const result = parser.parse(xml);
console.log(JSON.stringify(result, null, 2));
// {
//   "catalog": {
//     "product": {
//       "@_id": "P01",
//       "name": "Wireless Headphones",
//       "price": {
//         "@_currency": "USD",
//         "#text": "79.99"
//       }
//     }
//   }
// }

Recursos Principais

Conversão ao Vivo

A saída JSON é atualizada instantaneamente conforme você digita ou cola XML — sem necessidade de botão Converter. Entradas grandes (>200KB) mudam automaticamente para o modo manual para manter o navegador responsivo.

Convenção de Prefixo @_ para Atributos

Os atributos XML tornam-se chaves JSON com prefixo @_, seguindo a convenção do fast-xml-parser e xmltodict. torna-se { "@_attr": "val" } — inequívoco e sem colisão com qualquer nome de elemento válido.

Detecção Automática de Arrays para Elementos Repetidos

Elementos irmãos com o mesmo nome tornam-se automaticamente um array JSON. Um → objeto; dois ou mais elementos → array. Sem necessidade de configuração — a ferramenta detecta repetições automaticamente.

Sem Coerção de Tipo — Valores Permanecem como Strings

Todos os valores XML são preservados como strings JSON. Zeros à esquerda, números de telefone, códigos preenchidos e strings de aparência booleana como "true" ou "false" nunca são convertidos silenciosamente para números ou booleanos.

Privacidade 100% Baseada no Navegador

Toda a conversão é executada localmente no seu navegador usando JavaScript. Seu XML — incluindo credenciais, configurações internas e payloads sensíveis — nunca é enviado a nenhum servidor, nunca é registrado e nunca é armazenado.

Relatório de Erros de Boa Formação

Se o seu XML não for bem formado, a ferramenta reporta o número exato de linha e coluna do primeiro erro, para que você possa localizar e corrigir o problema imediatamente antes de converter.

Exemplos

Arquivo de Configuração

<?xml version="1.0" encoding="UTF-8"?>
<appConfig version="2.1" env="production">
  <database>
    <host>db.example.com</host>
    <port>5432</port>
    <name>myapp_prod</name>
    <pool max="10" min="2"/>
  </database>
  <cache enabled="true">
    <ttl>3600</ttl>
    <driver>redis</driver>
  </cache>
</appConfig>

Uma pequena configuração de aplicação com atributos e elementos aninhados. Os atributos tornam-se chaves com prefixo @_ na saída JSON: version="2.1" torna-se "@_version": "2.1" sob appConfig, e os atributos max e min do elemento pool tornam-se "@_max": "10" e "@_min": "2". Todos os valores — incluindo port e ttl — permanecem como strings, não como números, pois o conversor não realiza coerção de tipo.

Fragmento de Sitemap

<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
  <url>
    <loc>https://go-tools.org/tools/xml-to-json</loc>
    <lastmod>2026-05-29</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.8</priority>
  </url>
  <url>
    <loc>https://go-tools.org/tools/json-to-xml</loc>
    <lastmod>2026-05-29</lastmod>
    <changefreq>weekly</changefreq>
    <priority>0.8</priority>
  </url>
</urlset>

Um fragmento sitemap.xml com dois URLs. Como há dois elementos irmãos sob , eles tornam-se um array JSON. A declaração de namespace xmlns torna-se "@_xmlns" no objeto urlset. O valor de priority "0.8" permanece como string — sem coerção numérica — portanto valores com zero à esquerda como "0.08" também seriam preservados exatamente.

Item RSS

<item>
  <title>XML to JSON: A Practical Guide</title>
  <link>https://go-tools.org/blog/xml-to-json-guide</link>
  <pubDate>Thu, 29 May 2026 00:00:00 GMT</pubDate>
  <category>Developer Tools</category>
  <description>Learn how XML attributes map to @_ keys, how repeated elements become arrays, and why values stay strings in any XML-to-JSON conversion.</description>
  <guid isPermaLink="true">https://go-tools.org/blog/xml-to-json-guide</guid>
</item>

Um elemento de item RSS 2.0. O elemento guid tem um atributo isPermaLink, então a saída JSON para guid torna-se um objeto com "@_isPermaLink": "true" e "#text": "https://go-tools.org/blog/xml-to-json-guide" — o atributo e o conteúdo de texto do elemento coexistem como chaves irmãs. Todos os outros elementos têm apenas conteúdo de texto e convertem diretamente para valores de string.

Como Usar

  1. 1

    Cole seu XML

    Insira ou cole seu XML no campo de entrada acima. Você também pode clicar em 'Carregar exemplo' para experimentar uma amostra — um arquivo de configuração, um fragmento de sitemap ou um item RSS.

  2. 2

    Veja a Saída JSON ao Vivo

    O JSON aparece instantaneamente no painel de saída. Os atributos tornam-se chaves com prefixo @_, o conteúdo de texto de elementos mistos torna-se #text e elementos irmãos repetidos tornam-se arrays. Ajuste a indentação (2 ou 4 espaços) conforme necessário.

  3. 3

    Copie ou Baixe

    Clique em Copiar para pegar o JSON para a área de transferência ou em Baixar para salvá-lo como arquivo .json pronto para a sua aplicação, API ou pipeline de dados.

Armadilhas Comuns de Conversão

Esquecer que os Valores Permanecem como Strings

O conversor não realiza coerção de tipo. Se o seu código downstream espera números JSON, mas o XML contém strings numéricas, você deve coerci-las explicitamente após a conversão. Depender de coerção implícita de string para número (o == do JavaScript ou operadores aritméticos) é propenso a erros — sempre use parseInt(), parseFloat() ou Number() deliberadamente.

✗ Incorreto
// XML: <timeout>30</timeout>
// JSON output: { "timeout": "30" }  ← string, not number
// Dangerous: comparing as-is
if (config.timeout > 25) { ... }  // "30" > 25 coerces, but fragile
✓ Correto
// XML: <timeout>30</timeout>
// JSON output: { "timeout": "30" }
// Safe: explicit coercion where you know the type
if (parseInt(config.timeout, 10) > 25) { ... }

Incompatibilidade de Forma: Item Único vs. Array

Quando há apenas um elemento , a saída é um objeto; quando há dois ou mais, torna-se um array. O código consumidor que sempre usa result.items.forEach() falhará quando items for um único objeto. Sempre normalize para um array após converter se o seu esquema permite um ou vários.

✗ Incorreto
// XML with one item: <root><item>a</item></root>
// JSON: { "root": { "item": "a" } }  ← string, not array
result.root.item.forEach(i => console.log(i));  // TypeError: not a function
✓ Correto
// Normalize to array regardless of count
const items = [].concat(result.root?.item ?? []);
items.forEach(i => console.log(i));  // safe for 0, 1, or many

Conteúdo Misto: Texto e a Chave #text

Quando um elemento tem tanto atributos quanto conteúdo de texto, o texto vai sob #text. Acessar o valor de texto como se fosse uma string simples retornará um objeto. Sempre verifique se um valor de elemento é uma string ou um objeto com a chave #text quando atributos forem possíveis.

✗ Incorreto
// XML: <price currency="USD">29.99</price>
// JSON: { "price": { "@_currency": "USD", "#text": "29.99" } }
const amount = result.price;  // { "@_currency": "USD", "#text": "29.99" }, not "29.99"
✓ Correto
// Handle both plain string and @_/#text object
const raw = result.price;
const amount = typeof raw === 'object' ? raw['#text'] : raw;  // "29.99"

Entrada XML Não Bem Formada

O conversor requer XML bem formado. Causas comuns de erros de boa formação: & não escapado no conteúdo de texto (use &), tags incompatíveis ( vs — o XML diferencia maiúsculas de minúsculas), múltiplos elementos raiz ou tags não fechadas. A mensagem de erro mostra a linha e coluna do primeiro problema.

✗ Incorreto
<!-- Unescaped & — well-formedness error -->
<query>name = 'Alice' & role = 'admin'</query>
✓ Correto
<!-- Escaped & — valid XML -->
<query>name = 'Alice' &amp; role = 'admin'</query>

Valores com Zero à Esquerda Corrompidos por Coerção

Esta ferramenta preserva zeros à esquerda porque não realiza coerção de tipo. Se você pós-processar o JSON com uma biblioteca que faz coerção (alguns validadores de esquema JSON, mapeadores ORM), o zero à esquerda pode ser perdido. Sempre declare o tipo do campo explicitamente como string no seu esquema.

✗ Incorreto
// XML: <zipCode>01234</zipCode>
// This tool outputs: { "zipCode": "01234" }  ← correct
// But if a downstream schema coerces:
// { zipCode: z.number() }  → 1234  ← leading zero lost
✓ Correto
// Declare ZIP codes and other padded identifiers as strings
// { zipCode: z.string() }  → "01234"  ← correct

Casos de Uso Comuns

Consumindo APIs SOAP / XML Legadas
Serviços corporativos legados (bancos, seguros, logística) frequentemente expõem APIs SOAP que retornam XML. Converta a resposta para JSON para trabalhar com os dados usando ferramentas JavaScript modernas, armazená-los em um banco de dados de documentos ou encaminhá-los para um consumidor de API REST.
Processando Feeds RSS e Atom
Feeds RSS 2.0 e Atom 1.0 são XML. Converta o XML do feed para JSON para extrair títulos, links, datas de publicação e descrições para agregadores de feed, pipelines de conteúdo e sistemas de notificação sem dependência de uma biblioteca de análise XML.
Analisando Arquivos de Sitemap
Arquivos sitemap.xml enumeram as URLs de um site com metadados. Converta um sitemap para JSON para analisar cobertura de URL, construir filas de rastreamento, comparar sitemaps entre ambientes ou alimentar URLs em um verificador de links ou ferramenta de auditoria SEO.
Transformando Arquivos de Configuração
Muitos sistemas corporativos (Spring, Maven, Ant, JBoss, Tomcat) usam arquivos de configuração XML. Converta-os para JSON para análise, scripts de migração, geração de documentação ou importação em ferramentas que usam JSON nativamente.
Desenvolvimento Mobile e Android
Recursos Android, arquivos de layout e AndroidManifest.xml são todos XML. Converta-os para JSON para scripts de análise, auditoria automatizada ou geração de documentação sobre permissões declaradas, atividades e valores de recursos.
Migração de Dados e ETL
Exportações de dados de sistemas corporativos (ERP, CRM, folha de pagamento) frequentemente chegam como XML. Converta para JSON como o primeiro passo em um pipeline ETL para carregar os dados em um repositório nativo de JSON como MongoDB, Firestore ou uma API REST.

Detalhes Técnicos

DOMParser do Navegador para Análise XML
A entrada XML é analisada usando o DOMParser nativo do navegador com o tipo MIME 'text/xml' — o mesmo mecanismo usado para renderizar SVG e XHTML. É totalmente compatível com XML 1.0 e reporta erros de boa formação com informações de linha e coluna. Essa abordagem lida corretamente com namespaces, seções CDATA, instruções de processamento e referências de entidade sem qualquer dependência de terceiros.
Serialização DOM para JSON Recursiva
Após a análise, a ferramenta percorre a árvore DOM recursivamente. Nós de elemento tornam-se objetos JSON; seus atributos tornam-se chaves com prefixo @_; elementos somente de texto tornam-se valores de string simples; elementos com tanto atributos quanto conteúdo de texto ganham uma chave #text para o conteúdo de texto. Elementos irmãos com o mesmo nome são coletados e enviados como um array JSON. Nós de texto somente com espaços em branco entre elementos são descartados.
Sem Coerção de Tipo — Preservação de Strings
Todos os valores de atributo e conteúdo de texto são escritos na saída JSON como strings. Nenhum parseInt, parseFloat ou análise de booleano é aplicado. Esta é uma escolha de design deliberada para prevenir corrupção silenciosa de dados para valores com zero à esquerda, decimais sensíveis à precisão e strings de aparência booleana. A coerção de tipo, quando necessária, deve ser aplicada explicitamente no código downstream.
100% Baseado no Navegador — Sem Upload, Sem Servidor
Todo o processamento é executado no mecanismo JavaScript do seu navegador. Nenhum dado é transmitido pela rede em nenhum momento. Entradas maiores que 200KB mudam automaticamente do modo ao vivo para o modo manual (exigindo um clique explícito em Converter) para manter o navegador responsivo e evitar o bloqueio da thread principal durante a travessia pesada do DOM.

Melhores Práticas

Valide a Boa Formação do XML Primeiro
Se a sua fonte XML é escrita à mão ou gerada por um sistema que ocasionalmente produz saída malformada, valide-a antes de converter. Use o botão Validar do Formatador XML para confirmar que o XML é bem formado e obter localizações precisas de erros para quaisquer problemas.
Normalize Campos de Um-ou-Vários para Arrays
Quando o seu esquema XML permite um ou vários elementos filhos com o mesmo nome, a saída JSON será um objeto para um elemento e um array para vários. Sempre normalize esses campos no seu código consumidor: const items = [].concat(result.items ?? []) — isso é seguro para zero, um ou vários e evita TypeErrors.
Aplique Coerção de Tipo Explicitamente e Seletivamente
Como esta ferramenta preserva todos os valores como strings, aplique coerção de tipo deliberadamente no seu código para os campos específicos que precisam dela. Usar parseInt(val, 10) para um campo inteiro conhecido é seguro. Aplicar coerção amplamente com Number(val) arrisca corromper valores com zero à esquerda, strings vazias e decimais sensíveis à precisão.
Verifique #text ao Acessar Valores de Elemento
Se um elemento pode ter atributos em alguns payloads e não em outros, seu valor JSON será uma string simples (sem atributos) ou um objeto com chaves @_ e uma chave #text (com atributos). Escreva acessores robustos: const val = typeof node === 'object' ? node['#text'] : node. Esse padrão lida com ambas as formas e evita valores undefined silenciosos.
Para Trabalho XML Sem Perdas, Use o Formatador XML
A conversão XML para JSON descarta comentários, instruções de processamento e semântica de namespace. Se você precisar preservar todo o conteúdo XML exatamente, use o Formatador XML para embelezar, minificar e validar sem nenhuma perda. Converta para JSON apenas quando precisar trabalhar com os dados em um contexto nativo de JSON.

Perguntas Frequentes

Meus dados XML são enviados a um servidor ao usar esta ferramenta?
Não. Toda a conversão acontece inteiramente no seu navegador usando JavaScript. Seu XML nunca é transmitido pela rede, nunca é armazenado em nenhum servidor e nunca é registrado ou analisado. Isso torna a ferramenta segura para uso com payloads XML contendo credenciais de API, configuração interna de serviço, tokens SOAP WS-Security, dados HL7/FHIR de saúde ou qualquer outro conteúdo sensível. Você pode verificar isso abrindo a guia Rede do seu navegador — você verá zero requisições disparadas ao colar ou converter XML.
Como os atributos XML são mapeados na saída JSON?
Os atributos XML tornam-se chaves JSON com o prefixo @_. Por exemplo, produz um objeto JSON contendo "@_id": "P01" e "@_category": "electronics" ao lado de quaisquer chaves de elementos filhos. Quando um elemento tem tanto atributos quanto conteúdo de texto — como 29.99 — o conteúdo de texto é armazenado sob a chave especial "#text", de modo que o resultado é { "@_currency": "USD", "#text": "29.99" }. Essa convenção é consistente e previsível: @_ sempre significa atributo, #text sempre significa conteúdo de texto do elemento.
O conversor realiza coerção de números ou booleanos?
Não. Todo conteúdo de texto XML e valores de atributo tornam-se strings JSON, independentemente de como pareçam. 42 torna-se "count": "42", não 42. true torna-se "enabled": "true", não true. Isso é intencional e importante: preserva zeros à esquerda (números de telefone, códigos de conta, CEPs como "01234"), precisão numérica para valores como "0.100" e valores de string que parecem booleanos. Se você precisar de números ou booleanos no JSON resultante, aplique coerção de tipo no seu próprio código após a conversão — onde você controla exatamente quais campos são coercidos.
Como são tratados elementos repetidos (irmãos com o mesmo nome)?
Um único elemento filho torna-se um objeto JSON. Dois ou mais elementos filhos com o mesmo nome de tag sob o mesmo pai tornam-se um array JSON. Por exemplo, a produz { "root": { "item": "a" } } — item é um objeto (string). Mas ab produz { "root": { "item": ["a", "b"] } } — item é um array. Isso significa que a estrutura da sua saída JSON depende do número de elementos irmãos no XML, o que é uma das razões pelas quais a conversão XML para JSON é baseada em convenções. Se o seu esquema XML pode ter um ou vários itens, o código consumidor deve lidar com os casos de objeto e array.
A conversão XML para JSON é sem perdas?
Não. O XML tem recursos que não têm equivalente JSON e são descartados durante a conversão: comentários XML () são descartados, instruções de processamento () são descartadas, as ligações de prefixo de namespace são parcialmente preservadas como atributos @_, mas sua semântica não é, e a ordem relativa de nós de conteúdo misto (texto intercalado com elementos filhos) pode não fazer round-trip perfeitamente. Para XML puramente estrutural sem comentários ou instruções de processamento, a conversão preserva todos os nomes de elementos, nomes de atributos, valores de atributos e conteúdo de texto. Para trabalho XML sem perdas — formatação, validação ou inspeção de XML sem perda de dados — use o Formatador XML.
Como converto JSON de volta para XML?
Use nosso Conversor JSON para XML complementar. Ele aplica as mesmas convenções em sentido inverso: chaves com prefixo @_ tornam-se atributos XML, chaves #text tornam-se conteúdo de texto do elemento e arrays JSON tornam-se elementos irmãos repetidos com o mesmo nome. Isso torna as duas ferramentas simétricas para casos de uso de round-trip.
O que acontece com os namespaces XML?
Declarações de namespace (xmlns="..." e xmlns:prefixo="...") são tratadas como atributos regulares e aparecem na saída JSON como chaves @_xmlns e @_xmlns:prefixo. O prefixo de namespace em nomes de elementos é preservado como parte da chave do nome do elemento (por exemplo, torna-se "soap:Body" no JSON). O significado semântico dos namespaces — que dois prefixos podem apontar para o mesmo URI — não é interpretado. Se o tratamento preciso de namespaces for importante para o seu caso de uso, analise o XML em um parser com reconhecimento de namespace em vez de converter para JSON.
Por que 0123 torna-se "0123" e não 123?
Porque o conversor não realiza coerção de tipo. A string "0123" e o número 123 são valores diferentes: "0123" tem um zero à esquerda que é significativo em muitos contextos (códigos de conta, códigos postais, números de identificação nacional, identificadores preenchidos). Descartar silenciosamente esse zero à esquerda corromperia os dados. O padrão seguro é preservar todos os valores como strings exatamente como aparecem no XML. Aplique a análise numérica seletivamente no seu próprio código para os campos específicos onde você sabe que o valor é sempre um inteiro simples.
Qual é a diferença entre esta ferramenta e um formatador XML?
O Formatador XML reformata XML — ele altera a indentação e os espaços em branco, mas a saída ainda é XML. Este Conversor XML para JSON altera o formato completamente: a saída é um documento JSON que representa a estrutura XML usando a convenção de atributo @_. Use o formatador quando quiser ler, editar, validar ou minificar XML. Use este conversor quando precisar trabalhar com os dados XML em uma aplicação JavaScript, alimentá-los em uma API REST ou armazená-los em um repositório de documentos JSON.
Existe um limite de tamanho de arquivo?
Não há um limite rígido, mas entradas maiores que 200KB mudam automaticamente do modo ao vivo para o modo manual. No modo manual, um botão Converter aparece e a conversão só é executada quando você clica nele — isso mantém o navegador responsivo durante a análise de documentos XML grandes. Para arquivos XML muito grandes (exportações de dados de vários megabytes), considere ferramentas de linha de comando para melhor desempenho: python3 -c "import sys, xmltodict, json; print(json.dumps(xmltodict.parse(sys.stdin.read()), indent=2))" ou node -e com uma biblioteca XML para JSON dedicada.
O conversor lida com seções CDATA?
Sim. O conteúdo de seção CDATA () é tratado como conteúdo de texto do elemento e aparece como um valor de string simples na saída JSON. Os próprios delimitadores CDATA são removidos — apenas o conteúdo interno é preservado. Por exemplo, produz "note": "if (a < b) return;" em JSON. Este é o comportamento correto: CDATA é apenas uma forma de incorporar texto com caracteres especiais sem escapá-los; o significado semântico é o conteúdo de texto.
Posso converter XML com múltiplos elementos raiz?
Não. XML com múltiplos elementos raiz não é bem formado, e esta ferramenta requer entrada XML bem formada. Se o seu parser XML lhe fornecer múltiplos elementos raiz (comum ao juntar fragmentos XML), envolva-os em um único elemento raiz antes de converter. Por exemplo, se você tiver , converta como . A mensagem de erro indicará a posição do problema de boa formação para que você possa corrigi-lo rapidamente.

Ferramentas relacionadas

Ver todas as ferramentas →