Strumenti
IT

Convertitore XML in JSON

Incolla l'XML per ottenere subito il JSON. Attributi, testo ed elementi ripetuti vengono convertiti con regole semplici e prevedibili, e le opzioni ti permettono di controllare array, tipi di valore e prefissi dei namespace.

XML

JSON

Privacy garantita: i tuoi dati vengono elaborati nel browser e non vengono mai caricati su alcun server.

Come convertire XML in JSON

  1. Incolla l'XML, trascina un file .xml nell'editor o caricalo da un URL. Il JSON compare mentre scrivi.
  2. Regola il prefisso degli attributi e la chiave per il testo, e scegli se usare sempre gli array, convertire numeri e booleani o ignorare i prefissi dei namespace.
  3. Copia il JSON o scaricalo come file .json.

Come l'XML viene convertito in JSON

XMLJSON
<name>Ada</name>"name": "Ada"
<price>9.90</price>"price": 9.90 – cifre mantenute esattamente
<item id="7">Pen</item>"item": {"@id": 7, "#text": "Pen"}
<tag>a</tag><tag>b</tag>"tag": ["a", "b"]
<note/>"note": null
<![CDATA[a < b]]>il testo "a < b"
<soap:Body> con Ignora i prefissi dei namespace"Body"

Perché conta l'opzione “Usa sempre array”

Un elemento che compare una sola volta diventa un valore singolo, ma se compare due volte diventa un array. Il codice che legge il JSON deve quindi gestire entrambe le forme – un bug classico quando un elenco a volte contiene un solo elemento. Spunta Usa sempre array per gli elementi figli per ottenere array ovunque: la struttura diventa prevedibile al costo di qualche parentesi in più.

Convertire XML in JSON nel codice

Domande frequenti

La conversione è senza perdita di dati?

Nomi degli elementi, attributi e testo vengono mantenuti, e i numeri conservano esattamente le loro cifre. Commenti, istruzioni di elaborazione e la posizione del testo tra gli elementi figli (contenuto misto) non possono essere rappresentati in JSON.

Posso riconvertire il JSON in XML?

Sì, con il convertitore da JSON a XML del nostro sito gemello JSON Formatter, che usa le stesse convenzioni @ e #text.

Cosa succede ai namespace?

Per impostazione predefinita i nomi con prefisso come soap:Body vengono mantenuti come chiavi, e le dichiarazioni xmlns compaiono come attributi. Spunta Ignora i prefissi dei namespace per ottenere nomi semplici come Body senza le dichiarazioni.

Perché un valore è una stringa invece di un numero?

Valori come 007 o 1,000 non sono semplici numeri decimali, quindi restano stringhe per evitare perdite di dati. Togli la spunta da Converti numeri e true/false per mantenere ogni valore come stringa.