XML a JSON

Pega XML y obtén JSON listo para usar en tu código. Los atributos pasan a claves que empiezan por @, los elementos repetidos pasan a arrays y el texto de un elemento pasa a ser su valor.

Gratis y privado. Todo funciona en tu navegador y no se sube nada.

Cómo funciona

  1. Pega o abre un archivoPega tus datos en el cuadro de entrada o abre un archivo. Ejemplo muestra un caso de muestra.
  2. Revisa el resultadoLos datos convertidos aparecen a la derecha mientras escribes. Los errores indican la línea y la columna.
  3. Copia, descarga o invierteCopia el resultado, guárdalo como archivo o pulsa Invertir para convertirlo de vuelta.

Cómo se traslada el XML a JSON

El elemento raíz se convierte en la única clave del resultado. Un elemento que solo contiene texto pasa a ser un valor simple, así <name>Ana</name> se convierte en "name": "Ana". Los atributos se escriben con un prefijo, @id por defecto, y cuando un elemento tiene atributos y texto, el texto se guarda en #text. Los elementos con el mismo nombre que van seguidos se convierten en un array. Las secciones CDATA se leen como texto; los comentarios y las instrucciones de procesamiento se omiten.

Con la detección de números y booleanos activada, valores como 89.90 y true pasan a ser tipos reales de JSON. Los códigos con cero inicial, como códigos de barras o códigos postales, y los números de más de 15 dígitos se quedan como texto, así no se pierde nada. Ten en cuenta que un elemento que aparece una sola vez no es un array; si tu código siempre espera una lista, comprueba ese caso.

Sobre XML

XML (Extensible Markup Language) guarda los datos en elementos anidados con etiquetas de apertura y cierre, y puede añadir atributos a cada elemento. Es habitual en feeds, facturas electrónicas, archivos de Office y servicios SOAP.

Sobre JSON

JSON (JavaScript Object Notation) escribe los datos como objetos entre llaves, listas entre corchetes, texto entre comillas dobles, números, true, false y null. Casi todas las API y lenguajes de programación lo leen.

Preguntas frecuentes

¿Se cargan entidades externas o DTD?

No. El XML lo lee el analizador integrado de tu navegador, que no carga archivos externos. No se envía nada por la red.

¿Se suben mis datos?

No. La conversión se hace en tu navegador. Los archivos de configuración con contraseñas o claves nunca salen de tu dispositivo.

¿Por qué yes sigue siendo texto en mi JSON?

En YAML 1.2, la versión actual, solo true y false son booleanos. Las herramientas antiguas de YAML 1.1 también leen yes, no, on y off como booleanos. Activa la opción YAML 1.1 si tu archivo se escribió para una de esas herramientas.

¿Qué pasa con varios documentos YAML?

Si la entrada tiene más de un documento, cada uno empezando con una línea de tres guiones, el resultado en JSON es una lista con un elemento por documento.

¿Cómo se muestran los atributos XML en JSON?

Los atributos llevan una @ delante de su nombre, por ejemplo @id. Si un elemento tiene atributos y texto, el texto va en #text. Puedes elegir otro prefijo para los atributos.

¿Funciona sin conexión?

Sí. Después de abrir la página una vez, sigue funcionando sin conexión a internet.