Strumento per sviluppatori / 01
Convertitore da XML a JSON
Converti un documento XML in JSON leggibile, gestendo in modo sensato attributi ed elementi ripetuti.
Convertitore da XML a JSON: TOEA legge gli elementi, gli attributi, il testo e il CDATA del documento, quindi li organizza in JSON: agli attributi viene anteposto @, il testo libero diventa #text e i nomi ripetuti degli elementi fratelli diventano un array. Funziona al 100% localmente nel browser, senza caricare file sul server.
- Categoria
- Strumenti per sviluppatori
- Esecuzioni
- Nel browser
- Costo
- Gratuito · senza registrazione
- Disponibilità
- Pronto all'uso
Funziona interamente nel browser
Fino a 5 MB · non viene caricato nulla
Tutto arriva come testo
XML non ha tipi di dati, quindi <count>42</count> diventa "42" e <active>true</active> diventa "true". Converti numeri e booleani nel codice che legge il JSON, dove sai a quali campi corrispondono. Lo stesso vale per gli attributi: @id contiene una stringa anche quando sembra numerico.
Il codice che legge il risultato deve anche gestire gli elementi che si ripetono solo a volte. Un <item> che compare una volta è un oggetto, mentre due elementi formano un array: normalizza con Array.isArray(x) ? x : [x] prima di iterare.
Documenti che non si convertono bene
La conversione è adatta ai dati: configurazioni, risposte API, feed ed esportazioni. È poco adatta alla prosa. In <p>Read <b>this</b> first</p> il testo libero viene unito in un unico valore #text e la parola in grassetto diventa una chiave separata, quindi l'ordine di lettura viene perso. XHTML, DocBook e formati documentali simili vengono gestiti meglio con una libreria XML. Per esaminare la struttura di un documento prima della conversione, indentalo con il formattatore XML.
Come usarlo
- Incolla l'XML o scegli un file.
- Scegli la larghezza del rientro.
- Copia o scarica il JSON.
Privacy e limitazioni
Il testo viene convertito nel browser e non viene mai caricato, un aspetto importante quando il file è una configurazione o un'esportazione che preferisci non affidare a uno sconosciuto. I namespace vengono mantenuti così come sono nei nomi degli elementi, senza essere risolti.
Strumenti correlati
Domande frequenti
Perché gli attributi iniziano con @?
XML separa gli attributi dagli elementi figli; JSON non prevede questa distinzione. Il prefisso @ li mantiene separati, così la conversione può essere invertita senza dover fare supposizioni.
Perché un elemento è diventato un array?
I nomi ripetuti degli elementi fratelli diventano sempre un array, perché è questo il significato della struttura. Un nome che compare una sola volta rimane un valore semplice.
A cosa serve #text?
Un elemento che contiene sia testo sia elementi figli ha bisogno di un posto in cui conservare quel testo libero: questo posto è #text.
Cosa non è supportato?
Le definizioni di entità DTD, la risoluzione dei namespace e le istruzioni di elaborazione oltre alla dichiarazione. I file di configurazione e i payload delle API non li usano.
Strumento gratuito · nel browser esecuzioni · senza account