Funciona en tu dispositivo · Tu archivo nunca sale de tu dispositivo.
Suelta un archivo .xml o pega XML de una API, un feed o un archivo de configuración y obtén JSON con el que trabajar. El documento lo lee el propio analizador XML del navegador, así que todo lo que esté bien formado se convierte, y un archivo mal formado se indica con la línea y la columna del problema.
La correspondencia es fija y reversible: cada elemento pasa a ser una clave; los hermanos con el mismo nombre forman un array; los atributos se conservan en claves que empiezan por @ (id="3" pasa a "@id": "3"); y cuando un elemento tiene texto además de hijos o atributos, el texto va en "#text". Un elemento que solo tiene texto se convierte directamente en ese valor.
Con la detección de tipos activada, un texto como 12, true o un elemento vacío pasa a número, booleano o null; desactívala para conservarlo todo como texto. Los nombres con espacio de nombres (soap:Body) se mantienen tal cual. La vista previa muestra las primeras 200 líneas antes de descargar.
Cómo Convertir XML a JSON
Suelta un archivo XML o pega el XML en el cuadro.
Decide si números, booleanos y elementos vacíos deben llevar su tipo.
Pulsa «Convertir a JSON» y revisa la vista previa.
Descarga el .json.
Formatos admitidos y límites
Entrada
XML (.xml) – un archivo o texto pegado, UTF-8
Salida
JSON con sangría, UTF-8
Atributos
Conservados como claves "@nombre"
Elementos repetidos
Pasan a ser un array
Dónde se ejecuta
En tu navegador – sin subir nada
No sirve para: Documentos que no son XML bien formado (etiquetas sin cerrar, páginas HTML) – el analizador indica el primer problema en lugar de adivinar.
Preguntas frecuentes
¿Mis archivos se suben a un servidor?
No. La conversión ocurre por completo en tu navegador, con la potencia de tu propio dispositivo. El archivo no sale de tu ordenador ni de tu móvil; por eso la herramienta también funciona sin conexión una vez cargada la página.
¿Cómo se tratan los atributos y el contenido mixto?
Los atributos pasan a claves con el prefijo @, así que <item id="3"> da "@id": "3". Si un elemento tiene texto además de atributos o elementos hijos, el texto se guarda en "#text"; un elemento con solo texto se convierte directamente en ese texto.
¿Por qué un elemento es un objeto y los repetidos un array?
Un elemento que aparece una vez bajo su padre pasa a ser un objeto (o un valor); dos o más hermanos con el mismo nombre forman un array. Eso refleja el documento con exactitud, así que una lista de un solo elemento es un objeto – si tu código necesita un array en ambos casos, envuélvelo en el lado receptor.
¿Cómo queda la parte superior del JSON?
Una clave con el nombre del elemento raíz, que contiene todo lo demás – <records>…</records> pasa a {"records": {...}}. Así se conserva el nombre de la raíz y la herramienta JSON a XML puede reconstruir el mismo documento.