XML a JSON
XML y JSON modelan los datos de manera diferente: XML tiene atributos y contenido mixto, JSON tiene objetos y arreglos. Convertir sin pérdida necesita una convención. Esta herramienta ofrece tres: compacto (elimina atributos), Badgerfish (atributos bajo @key, texto bajo $) y literal (cada nodo XML se convierte en un objeto JSON con plena fidelidad). Elige el que coincida con el consumidor de JSON al que te diriges.
Cómo convertir XML a JSON
-
1
Pegar XML
Cualquier XML bien formado. Se preservan los espacios de nombres.
-
2
Elegir estilo de conversión
Compacto, Badgerfish o literal/sin pérdida.
-
3
Manejar arreglos
Forzar ciertos elementos a ser siempre arreglos (configurable).
-
4
Copiar salida JSON
Con formato bonito o minimizado, tu elección.
Comparación de los tres estilos
Entrada:
<book id="1" lang="en">
<title>1984</title>
<author>Orwell</author>
</book>
Compacto (elimina atributos):
{
"book": {
"title": "1984",
"author": "Orwell"
}
}
Badgerfish (atributos bajo @, texto bajo $):
{
"book": {
"@id": "1",
"@lang": "en",
"title": { "$": "1984" },
"author": { "$": "Orwell" }
}
}
Literal / JsonML-ish (plena fidelidad):
{
"book": {
"@attributes": { "id": "1", "lang": "en" },
"title": "1984",
"author": "Orwell"
}
}
Arreglos forzados
XML no tiene forma de decir “esta es una lista de uno”. Una secuencia de un solo elemento se ve idéntica a un escalar:
<items>
<item>A</item>
</items>
Eso puede serializarse como {"item": "A"} o {"item": ["A"]}. El convertidor te permite marcar nombres de elementos (por XPath) como siempre-arreglos, para que tu consumidor JSON posterior obtenga tipos consistentes.
Contenido mixto
El contenido mixto, texto intercalado con elementos hijos, es el único lugar donde cualquier conversión de XML a JSON pierde información:
<p>¡Hola <em>mundo</em>!</p>
La mayoría de los estilos eliminan el texto o lo colapsan. El estilo literal preserva el orden a través de un arreglo:
{
"p": {
"@content": ["¡Hola ", { "em": "mundo" }, "!"]
}
}
Inferencia de tipos
Por defecto, los valores son cadenas. Activa “analizar numérico/booleano” y el convertidor convertirá 42, 3.14, true, false a los tipos JSON correspondientes. Ten cuidado: un atributo XML id="007" se convierte en 7 con la conversión activada, lo cual probablemente no quieras.
Cuándo elegir cuál
- Compacto: para JSON legible por humanos donde los atributos son ruido.
- Badgerfish: cuando necesitas atributos y texto a la misma profundidad que los hijos.
- Literal: cuando debes volver a XML sin pérdida.
Preguntas frecuentes
Cuando un elemento aparece una vez, el convertidor predetermina a objeto; dos o más, a arreglo. Usa la opción de forzar arreglo para hacerlo consistente si tu consumidor espera una forma.
Los prefijos de espacio de nombres se preservan en las claves (ns:title) a menos que habilites “eliminar espacios de nombres”. Las declaraciones mismas se convierten en atributos @xmlns:ns en el elemento raíz.
El modo literal es el más cercano a ser sin pérdida, pero el orden del contenido mixto entre elementos y texto es complicado. El modo compacto definitivamente pierde atributos. Badgerfish es un término medio pragmático.
No. La conversión se realiza en tu navegador.
Herramientas relacionadas
Generador de letras aleatorias
Genera letras aleatorias A-Z. Elige la cantidad, usa mayúsculas, minúsculas o mezcla de ambas, y aplica el resultado en juegos, consignas o clase.
Referencia de la tabla ASCII
Tabla ASCII completa del 0 al 127 con decimal, hex, octal, binario y referencia numérica HTML para cada carácter, incluidos los códigos de control como NUL, LF y DEL.
Referencia de atajos de teclado
Busca los atajos predeterminados documentados de VS Code, Chrome y Bash con GNU Readline en macOS, Windows y Linux.
Convertidor de ASCII a Binario
Convierte cualquier cadena ASCII a su representación binaria. Cada carácter se convierte en ocho bits, separados por espacios, listos para pegar en un seguimiento de protocolo o tarea.
Desofuscador de JavaScript
Desofusca JavaScript minificado o empaquetado con renombrado de variables, decodificación de arreglos de cadenas, reversión de aplanamiento de flujo de control y embellecimiento.
Generador de Formularios CSS
Genera el CSS de un formulario completo con estilo: una cuadrícula de formulario, etiquetas, entradas, áreas de texto, selectores y estados de foco claros. Elige el color de acento, el radio de las esquinas y la separación, y copia el código.
Herramienta disponible en otros idiomas
- XML zu JSON [DE]
- XML para JSON [PT]
- Chuyển đổi từ XML sang JSON [VI]
- XML till JSON [SV]
- แปลง XML เป็น JSON [TH]
- XML ke JSON [ID]
- XML → JSON [KO]
- XMLからJSONへ [JA]
- XML إلى JSON [AR]
- XML vers JSON [FR]
- XML naar JSON [NL]
- XML do JSON [PL]
- XML in JSON [IT]
- От XML к JSON [RU]
- XML'den JSON'a [TR]
- XML 转 JSON [ZH]
- XML to JSON [EN]