Convertir JSON a XML online — Objetos y arrays
Convierte JSON a XML con raíz personalizada y una correspondencia clara para los arrays
Funciona en tu navegador · no se sube nada
Las claves de los objetos pasan a ser nombres de elemento y los elementos de los arrays, elementos item. null, los objetos vacíos y los arrays vacíos se convierten en elementos vacíos, así que no se pueden recuperar los tipos originales. Los nombres de elemento no válidos se rechazan.
Cómo se usa
- Pega JSON válido.
- Elige el nombre del elemento raíz o deja root.
- Comprueba cómo se representan los arrays y los valores vacíos.
- Copia el texto XML generado.
Reglas de conversión
Las claves de los objetos se convierten en nombres de elemento XML. Cada elemento de un array pasa a ser un hijo item, en el mismo orden. Los ampersands, los signos de menor y mayor y las comillas se escapan como entidades XML. Los retornos de carro dentro de las cadenas se escriben como referencias de carácter. Los valores en coreano, chino o con emojis se mantienen como texto Unicode.
null, los objetos vacíos y los arrays vacíos se convierten todos en elementos vacíos. Los valores primitivos no llevan atributos de tipo, así que esta salida por sí sola no permite reconstruir los tipos JSON originales. Los nombres deben empezar por una letra admitida o un guion bajo; no se admiten prefijos de espacio de nombres con dos puntos. Se rechazan los caracteres de control de XML 1.0 y las unidades sustitutas (surrogates) sueltas.
Ejemplos
{"name":"민수","tags":["中文","😀"]} crea un elemento name y un elemento tags con dos hijos item. {"message":"A & B"} escapa el ampersand. {"empty":null} crea un elemento vacío.
Precisión y límites
Las claves duplicadas, los enteros fuera del rango seguro, los decimales con demasiada precisión y los números que desbordan se rechazan en lugar de cambiar el valor sin avisar. Pon entre comillas, como cadenas JSON, los identificadores exactos y las cantidades decimales. La entrada admite como máximo un millón de caracteres y 64 niveles de anidamiento. Es una correspondencia genérica de elementos: no implementa el esquema XML de ningún proveedor concreto. Todo el procesamiento se queda en tu navegador.
Preguntas frecuentes
¿Cómo se representan los arrays?
Cada valor del array se convierte en un elemento item dentro del elemento que lo contiene. Se respeta el orden del array.
¿Se conservan todos los tipos de JSON?
No. Los números y las cadenas comparten la misma representación como texto, y null, los objetos vacíos y los arrays vacíos pasan a ser elementos vacíos. Guarda el JSON original si necesitas una conversión de ida y vuelta fiel.
¿Por qué se rechaza un nombre de propiedad?
Las claves de los objetos deben ser nombres de elemento XML admitidos. Se rechazan los espacios, los dos puntos, los emojis y los dígitos iniciales. Las letras coreanas y chinas sí se admiten.
¿Puedo cambiar el nombre del elemento raíz?
Sí. Por defecto es root, pero puedes escribir otro nombre siempre que sea un nombre de elemento XML válido.