Convertitore XML in JSON

Convertire XML in JSON scegliendo come trattare attributi, elementi ripetuti e namespace. Tutto avviene nel tuo browser, quindi il tuo XML non viene mai inviato a un server.

Il convertitore funziona interamente nel tuo browser e ha bisogno di JavaScript. Il resto di questa pagina funziona anche senza. In alternativa: la libreria xmltodict in Python, oppure fast-xml-parser in Node.js.

Incolla del codice XML, trascina un file o carica l'esempio. I file vengono letti nel tuo browser: niente viene inviato a un server. Premi Ctrl+Enter per convertire.

Risultato

JSON con numeri di riga. Apri Opzioni per cambiare come vengono scritti attributi, testo e array.

Il JSON apparirà qui.

Questo strumento ti è stato utile? Sostieni XMLNest

«Load example» riempie l'input e «Convert» scrive il JSON. In «Options», con «Arrays» impostato su «Always» ogni elemento finisce in un array, e il risultato cambia subito. «Copy» copia il JSON negli appunti. (25 secondi, senza audio, interfaccia in inglese)

Come convertire XML in JSON online?

Incolla il tuo XML nel riquadro di input, apri un file con Apri file… oppure trascinalo sullo strumento. Poi premi Converti, o Ctrl+Enter (⌘+Enter su Mac). Il JSON compare nel riquadro Risultato con numeri di riga e colori. Copialo, oppure scaricalo come file .json con lo stesso nome del tuo file XML. Carica esempio mostra prima un piccolo catalogo di libri.

Come si trasforma l'XML in JSON?

L'elemento radice diventa l'unica chiave dell'oggetto JSON. Un elemento che contiene solo testo diventa una stringa. Un elemento con attributi o elementi figli diventa un oggetto: prima gli attributi, con una @ davanti al nome, poi i figli nell'ordine in cui compaiono la prima volta. Quando un elemento ha sia attributi sia testo, il testo va sotto #text. I figli con lo stesso nome vengono raccolti in un array, anche quando altri elementi stanno in mezzo. Commenti, istruzioni di elaborazione e dichiarazione XML vengono esclusi.

Attributi, array e namespace: quali opzioni ti servono?

Apri Opzioni quando il codice che legge il JSON si aspetta un'altra forma. Un trattino basso come prefisso, o nessun prefisso, dà chiavi più comode da scrivere in JavaScript. Array impostato su Sempre trasforma ogni elemento figlio in un array: un elenco con un solo elemento ha così la stessa forma di un elenco con dieci. Rimuovi i prefissi trasforma g:price in price. Numeri e true/false scrive 42 e true senza virgolette; lascialo disattivato quando codici postali o ID devono restare testo.

Questo convertitore invia il mio file a un server?

No. La conversione avviene in questa scheda del browser. Il file viene letto sul tuo dispositivo, e le regole di sicurezza della pagina impediscono qualsiasi invio in rete. Non viene salvato nulla, quindi il tuo XML sparisce quando chiudi la scheda. Se l'XML è rotto, ottieni il primo errore con riga e colonna, come nel validatore XML, e Vai all'errore lo seleziona nell'input.

Convertire XML in JSON nel codice

In un progetto, una libreria fa lo stesso lavoro: xml2js o fast-xml-parser in Node.js, xmltodict in Python, Jackson in Java. Ognuna ha le sue convenzioni per attributi e array, quindi confronta un campione del suo output con il risultato di questa pagina prima di farci affidamento. Per mettere prima in ordine l'XML, usa il formattatore XML.

Domande

Come vengono convertiti in JSON gli attributi XML?

Ogni attributo diventa una chiave che inizia con @, con il suo valore come stringa, per esempio "@id": "bk101". In Opzioni puoi usare invece un trattino basso, o nessun prefisso.

Perché un elemento è un array e un altro no?

Per impostazione predefinita diventano array solo gli elementi che si ripetono dentro lo stesso genitore. Se il tuo codice ha bisogno sempre della stessa forma, imposta Array su Sempre.

Cosa succede ai namespace?

I prefissi restano come sono scritti, per esempio dc:title, e le dichiarazioni xmlns compaiono come attributi. Scegli Rimuovi i prefissi in Opzioni per avere nomi semplici.

C'è un limite di dimensione?

Sì, 20 MB per un file aperto o per il testo incollato. La conversione avviene in background, quindi la pagina resta reattiva mentre lavora.

Può riconvertire il JSON in XML?

Non ancora. Questo strumento converte solo XML in JSON. Un convertitore da JSON a XML potrebbe arrivare più avanti, insieme agli altri strumenti di questo sito.

Posso guardare un file XML in Chrome prima di convertirlo?

Sì. Chrome mostra un file XML senza foglio di stile come un semplice albero. XMLNest, un'estensione disponibile nel Chrome Web Store, aggiunge nodi comprimibili, numeri di riga e un'impaginazione più pulita, che rendono più facile leggere un file grande.