Convertir XML a JSON Online Visor Estructurado Gratis: Pega tu XML y Descarga el JSON Formateado al Instante

XML y JSON hablan de lo mismo —datos con estructura— en dos dialectos distintos, y convertir a mano un XML con etiquetas repetidas y atributos en un JSON limpio es lento y propenso a errores. Este conversor pega tu XML, lo analiza en tu propio navegador y devuelve el JSON formateado: los elementos repetidos se agrupan en arrays, los atributos se conservan con prefijo @ y el texto de cada nodo queda accesible. Sin subir el documento a ningún servidor, con avisos en español si el XML está mal formado y botón de descarga directa.


Qué ganas al pasar de XML a JSON

JSON es el formato que entienden de forma nativa JavaScript, la mayoría de las API modernas y herramientas como hojas de cálculo conectadas o generadores de sitios. El XML sigue vivo en facturas electrónicas, feeds de productos, respuestas de administraciones y archivos de configuración, así que la conversión aparece en cuanto hay que cruzar esos dos mundos. La traducción no es literal: XML mezcla atributos y elementos hijos y JSON no distingue entre ambos, por eso esta herramienta aplica una convención clara y constante: los atributos se guardan con el prefijo @ (por ejemplo @numero), los elementos que se repiten bajo el mismo padre se convierten en un array, y el texto de un elemento con atributos o hijos se conserva en la clave #texto.

Cómo se usa

  1. Pega tu XML en el campo superior: vale completo, con su declaración <?xml…?>, comentarios y secciones CDATA.
  2. Elige el formato de salida: legible con 2 o 4 espacios para leerlo y depurarlo, o compacto para pegarlo en una petición o una variable.
  3. Pulsa Convertir a JSON: si el XML tiene un error (una etiqueta sin cerrar, un cierre que no coincide), el aviso te dice el problema y la posición aproximada.
  4. Copia el resultado o descárgalo como archivo .json listo para usar.

Ejemplo resuelto

Con la factura de ejemplo que trae la herramienta —dos líneas de pedido, atributo numero="2026-041" y atributo moneda="EUR"— el JSON resultante es: {"factura": {"@numero": "2026-041", "@moneda": "EUR", "cliente": "Ana Paz", "linea": [{"concepto": "Teclado", "precio": "39,90"}, {"concepto": "Ratón", "precio": "19,90"}], "total": "59,80"}}. Fíjate en las tres reglas en acción: los atributos cuelgan de la raíz con @, las dos etiquetas <linea> se han agrupado en un array porque se repiten, y los valores se conservan como texto, exactamente como aparecen en el XML de origen: «39,90» sigue siendo una cadena con su coma decimal, no un número transformado.

Casos de uso frecuentes

  • Consumir una API que solo responde XML desde una aplicación JavaScript que espera JSON.
  • Revisar respuestas de la administración (facturas, modelos, notificaciones) en un formato más fácil de recorrer y de imprimir bonito.
  • Migrar configuraciones antiguas en XML a herramientas modernas que importan JSON.
  • Depurar un feed de productos: convertirlo y buscar visualmente qué artículos salen y con qué atributos antes de subirlo a la tienda.

Limitaciones honestas

  • Todo ocurre en tu navegador: el XML que pegas nunca sale de tu dispositivo; puedes convertir documentos con datos sensibles sin enviarlos a un servidor desconocido.
  • Los valores se mantienen como cadenas de texto: el XML no distingue números de texto, así que «59,80» no se convierte en número; si tu destino necesita tipos, tendrás que convertirlos después.
  • Los espacios de nombres (prefijos tipo ns:etiqueta) se conservan como parte del nombre de la clave; la herramienta no los resuelve ni los elimina.
  • El contenido mixto (texto suelto entremezclado con etiquetas hijas en el mismo elemento) se simplifica: el texto se junta en #texto y puede perder su posición exacta entre los hijos.

Preguntas frecuentes

¿Por qué mi elemento sale a veces como objeto y a veces como array?

Porque la regla depende de cuántas veces aparece bajo el mismo padre: una sola vez, objeto (o su texto); dos o más, array con todos. Es la convención habitual, pero tenlo en cuenta al programar el consumo: un campo que hoy viene único mañana puede repetirse y llegar como array.

¿Qué pasa con los atributos? En mi JSON de destino no deberían perderse.

No se pierden: se guardan como claves con prefijo @ dentro del mismo objeto (por ejemplo, “@numero”: “2026-041”). Así se distinguen de los elementos hijos que pudieran llamarse igual y la conversión es reversible en la práctica.

¿Convierte también de JSON a XML?

No, esta herramienta va en una sola dirección. La vuelta no es una operación simétrica: habría que decidir qué claves con @ vuelven a ser atributos y cómo se nombran los elementos de cada array, decisiones que dependen de tu caso.

¿Tiene límite de tamaño el XML que puedo pegar?

El análisis se hace en tu navegador, así que el límite práctico es la memoria de tu dispositivo: documentos de varios megabytes se convierten sin problema; archivos gigantes de cientos de megabytes es mejor procesarlos con una herramienta de escritorio.

Más herramientas gratuitas


Herramientas relacionadas

Explora también estas herramientas gratuitas en español:

Ver todas las herramientas gratis en español

Leave a Comment

Your email address will not be published. Required fields are marked *

Scroll to Top