100 % locale — i tuoi dati non lasciano mai il tuo browser

CSV in XML — un documento che si analizza

Converti una tabella CSV in XML, un elemento per colonna. I nomi dell’intestazione diventano tag validi, così qualsiasi strumento XML apre il documento.

Istantaneo Privato Zero cookie
Indentazione
Delimitatore
Inverti: XML → CSV

Input CSV

Output XML

Cosa fa questo strumento

Ogni riga del CSV diventa un elemento row dentro un documento rows, e ogni colonna un elemento figlio che prende il nome dalla sua intestazione. I valori vengono sottoposti a escape come XML richiede: la e commerciale diventa &, le parentesi angolari diventano < e >.

Scegli tu l’indentazione, se i tipi vengono riconosciuti, e se la dichiarazione XML compare in cima.

I nomi di colonna non sono liberi

Un nome di elemento XML segue delle regole, un’intestazione di foglio di calcolo no. Un nome non può contenere spazi, non può iniziare con una cifra e non ammette gran parte della punteggiatura: tutte cose ordinarie in una riga di intestazione esportata.

I nomi dell’intestazione vengono quindi adattati anziché copiati:

  • un carattere vietato diventa un trattino basso: first name dà first_name, a+b dà a_b;
  • un nome che inizia con qualcosa che XML non accetta riceve un prefisso, non un troncamento: 2col dà _2col, così si capisce ancora di quale colonna si trattava;
  • le lettere che XML ammette restano intatte, accenti e CJK compresi — café e 日本語 passano invariati.

L’alternativa sarebbe emettere l’intestazione alla lettera e restituirti un file che sembra convertito e fallisce alla prima analisi. Quel fallimento compare lontano dalla sua causa, ed è questo a renderlo costoso.

Intestazioni duplicate

Due colonne con lo stesso nome vengono separate prima di arrivare all’XML: la seconda diventa a_1. Nessuna colonna viene fusa in silenzio in un’altra. Lo stesso vale quando due intestazioni diverse si riducono allo stesso nome: user id e user_id danno entrambe user_id, quindi la seconda diventa user_id_1. Senza, una delle due colonne sparirebbe dal documento, valore compreso.

Privato per progettazione

Tutto viene eseguito localmente nel browser con JavaScript. I tuoi dati non vengono mai caricati, quindi lo strumento è sicuro per contenuti sensibili e funziona anche offline.

Domande frequenti

Perché la mia colonna «first name» è diventata first_name?
Perché un nome di elemento XML non può contenere spazi. Lasciarlo produrrebbe un documento che nessun parser accetta, e l’errore comparirebbe solo alla lettura del file, non alla conversione.
Perché una colonna chiamata 2col riceve un trattino basso?
Perché un nome XML non può iniziare con una cifra. Il prefisso tiene leggibile il nome intero: ottieni `_2col`, non un `col` troncato che perde di quale colonna si trattasse.
I nomi accentati o in CJK vengono modificati?
No. Le regole sui nomi XML ammettono un’ampia porzione di Unicode, quindi `café`, `nom-composé` e `日本語` passano intatti. Viene sostituito solo ciò che XML vieta davvero.

Convertitori correlati