Come si usa
- Incolla l'XML oppure fai clic su «Carica esempio».
- Scegli se attivare «Converti numeri e booleani».
- Copia il JSON o scaricalo.
Opzioni spiegate
- Attributi
- Un attributo come id="bk101" diventa la chiave "@id". Il testo accanto agli attributi va in "#text".
- Elementi ripetuti
- Gli elementi che compaiono più di una volta sotto lo stesso genitore diventano un array JSON; un elemento singolo resta un oggetto.
- Converti numeri e booleani
- Se attiva, 44.95 diventa un numero e true un booleano. Disattivala per mantenere codici come 00123 esattamente come sono scritti.
Esempio
Questo XML, comprensivo di dichiarazione e di un commento:
<?xml version="1.0"?>
<!-- c -->
<catalog>
<book id="bk101" in_stock="true">
<title>XML Guide</title>
<price currency="USD">44.95</price>
<tag>a</tag><tag>b</tag>
<isbn>00123</isbn>
</book>
</catalog>
diventa questo JSON con Converti numeri e booleani attivo:
{
"catalog": {
"book": {
"title": "XML Guide",
"price": {
"#text": 44.95,
"@currency": "USD"
},
"tag": [
"a",
"b"
],
"isbn": 123,
"@id": "bk101",
"@in_stock": true
}
}
}
Gli attributi sono elencati dopo gli elementi figli. La dichiarazione e il commento scompaiono, e tag è diventato un array perché compare due volte. Con l’opzione disattivata, 44.95 resta “44.95”, isbn resta “00123” e l’attributo diventa “true” come testo. Riguarda sia i valori degli attributi sia il testo degli elementi.
Domande frequenti
Che fine fanno i commenti e la dichiarazione XML?
Vengono scartati, perché in JSON non c'è posto per loro. I dati di elementi e attributi vengono conservati.
Perché a volte un elenco diventa un oggetto invece di un array?
L'XML non dice se un elemento può ripetersi. Con una sola occorrenza il convertitore non può sapere che si tratta di un elenco, quindi produce un oggetto.
E se l'XML non è valido?
Viene segnalato il primo errore con il numero di riga, per esempio un tag di chiusura che non corrisponde.
Privacy
Questo strumento funziona interamente nel tuo browser. File e testi vengono elaborati sul tuo dispositivo e non vengono mai caricati sui nostri server.