Convertitore online gratuito da CSV a XML
Converti dati CSV tabellari in XML strutturato per i sistemi che richiedono elementi denominati e schemi.
Converti CSV in XML online - gratuito
Il tuo file viene elaborato istantaneamente e non viene archiviato sui nostri server.
Come convertire csv in xml file
- File di testo
- Ancora nessuna valutazione.
Un sistema di importazione dei dati, un dispositivo o un’applicazione aziendale può richiedere XML invece di un file CSV tabulare. La conversione mantiene i record, esprimendo i relativi campi come elementi denominati che il software può elaborare, convalidare e scambiare.
Che cos’è il formato CSV
CSV (comma-separated values) memorizza dati rettangolari organizzati in righe e colonne. Ogni riga rappresenta generalmente un record e la prima riga può contenere nomi di colonne come id,name,price.
Nonostante il nome, un file CSV può utilizzare virgole, punti e virgola, tabulazioni o un altro delimitatore. I valori che contengono il delimitatore, interruzioni di riga o virgolette sono normalmente racchiusi tra virgolette doppie; una virgoletta doppia incorporata viene rappresentata da due virgolette doppie consecutive. Le convenzioni CSV non sono completamente uniformi, quindi prima della conversione è necessario identificare il delimitatore, le regole per le virgolette, i caratteri di fine riga e la codifica dei caratteri.
Applicazioni per fogli di calcolo come Microsoft Excel e LibreOffice Calc esportano file CSV. Anche database, sistemi di contabilità, gestori di contatti, strumenti di laboratorio e script li utilizzano. CSV è adatto a tabelle semplici, ma non descrive nativamente record annidati, attributi, tipi di dati, regole di convalida o relazioni tra tabelle.
Che cos’è il formato XML
XML (Extensible Markup Language) memorizza testo strutturato utilizzando elementi e attributi. Una riga relativa a un cliente può diventare un elemento <customer> contenente elementi figlio come <id>, <name> e <email>.
XML può rappresentare gerarchie, record ripetuti, namespace, commenti e regole di convalida definite da uno schema come XSD. Queste funzionalità supportano interfacce applicative, file di configurazione, scambio di documenti, sistemi di pubblicazione e archivi che richiedono una struttura esplicita. XML è generalmente più prolisso di CSV e un convertitore non può dedurre le relazioni aziendali o lo schema richiesto dal destinatario basandosi soltanto sui nomi delle colonne.
Come convertire file CSV in XML
Utilizzo del convertitore online integrato
- Apri il convertitore da CSV a XML su 101convert.com.
- Seleziona o carica il file
.csvdi origine. - Scegli il delimitatore utilizzato dal file, in genere virgola, punto e virgola o tabulazione, e specifica se la prima riga contiene le intestazioni delle colonne.
- Seleziona UTF-8 quando i dati contengono caratteri accentati, testo non latino o simboli.
- Scegli la struttura XML, se sono disponibili opzioni. Una struttura comune prevede un elemento radice, un elemento record ripetuto e un elemento figlio per ogni colonna.
- Avvia la conversione e scarica il file
.xmlrisultante.
I file possono essere convertiti su 101convert.com senza installare software. Non caricare dati riservati, soggetti a normative o che consentano l’identificazione personale, a meno che il servizio non soddisfi i requisiti applicabili per la gestione dei dati.
Utilizzo di Python
La libreria standard di Python può eseguire conversioni ripetibili senza pacchetti aggiuntivi. Questo esempio legge una riga di intestazione, utilizza una mappatura prudente per i nomi degli elementi XML e scrive XML in UTF-8:
import csv
import re
import xml.etree.ElementTree as ET
def xml_name(header, number):
name = re.sub(r"[^A-Za-z0-9_.-]", "_", header.strip())
if not name or not re.match(r"^[A-Za-z_]", name):
name = f"field_{number}"
return name
root = ET.Element("records")
with open("input.csv", newline="", encoding="utf-8-sig") as source:
reader = csv.DictReader(source, delimiter=",")
headers = [xml_name(h or "", i) for i, h in enumerate(reader.fieldnames or [], 1)]
for values in reader:
record = ET.SubElement(root, "record")
for number, (original, value) in enumerate(values.items(), 1):
field = ET.SubElement(record, headers[number - 1])
field.text = value or ""
ET.ElementTree(root).write("output.xml", encoding="utf-8", xml_declaration=True)
Salva lo script come csv_to_xml.py ed esegui python csv_to_xml.py. Modifica delimiter="," per un file delimitato da punto e virgola o tabulazione e sostituisci records e record con i nomi richiesti dal sistema ricevente. Lo script presuppone intestazioni univoche; dopo la pulizia dei nomi, le intestazioni duplicate devono essere rinominate o mappate esplicitamente.
Controlli di compatibilità e qualità dei dati
- Mappa la struttura allo schema di destinazione. Un file XML ben formato può comunque essere rifiutato se presenta l’elemento radice, il namespace, l’annidamento, l’ordine dei campi, l’elemento obbligatorio o il formato dei dati errati. Utilizza l’XSD o un file XML di esempio del destinatario, se disponibile.
- Controlla i nomi degli elementi XML. I nomi delle intestazioni non possono essere utilizzati invariati quando iniziano con un numero o contengono spazi e altri caratteri non consentiti. Rinominali o configura una mappatura esplicita. Evita di convertire direttamente intestazioni arbitrarie in tag XML senza convalidarle.
- Definisci esplicitamente i tipi di dati. CSV non distingue in modo affidabile identificatori, numeri, date e valori Boolean. Mantieni come stringhe valori quali
00125quando gli zeri iniziali sono importanti e specifica i separatori decimali, i formati delle date e le rappresentazioni dei valori Boolean. - Decidi come rappresentare i campi vuoti. Un elemento mancante, un elemento vuoto come
<email/>e un attributo vuoto possono avere significati diversi per l’applicazione ricevente. - Verifica la codifica. UTF-8 è la scelta abituale. La dichiarazione XML, come
<?xml version="1.0" encoding="UTF-8"?>, deve corrispondere alla codifica effettiva del file. - Preserva l’escaping. Le e commerciali, i simboli di minore e altri caratteri riservati devono essere sottoposti a escaping in XML. Le librerie e i convertitori corretti gestiscono questo aspetto; la concatenazione manuale di stringhe XML può produrre documenti non validi.
- Controlla righe e valori dopo la conversione. Confronta con l’origine il numero di record, le intestazioni, i campi tra virgolette rappresentativi, le interruzioni di riga, i valori vuoti, le date, i valori decimali e i caratteri non ASCII. I file di grandi dimensioni possono inoltre richiedere un convertitore in streaming anziché il caricamento dell’intero dataset in memoria.
Confronto formato: CSV vs XML
Come i formati CSV e XML si confrontano sulle proprietà più importanti per questa conversione.
| Proprietà | .CSV Comma-Separated Values | .XML Extensible Markup Language |
|---|---|---|
| Leggibile come testo semplice | Sì | Sì |
| Tipi di dati | Tipizzato | Tipizzato |
| Strutture nidificate | No | Sì |
| Formule | No | No |
| Più tabelle o fogli | No | — |
| Dimensione tipica del file | Piccolo | Piccolo |
| Standard aperto | Sì | Sì |
| Ideale per | Scambio dati | Scambio dati |
| Introdotto | — | 1998 |
| Sviluppatore | — | W3C |
| Tipo MIME | text/csv | application/xml |
Software e collegamenti suggeriti: convertitori da csv a xml
Domande frequenti
Il convertitore da CSV a XML è gratuito?
Sì, convertire CSV in XML su 101convert.com è completamente gratuito. Non sono richiesti registrazione, e-mail o installazione.
Quanto può essere grande il mio file CSV?
Puoi caricare file CSV fino a 300 MB e convertire fino a 100 file alla volta in un unico lotto.
Cosa succede ai file caricati?
I file vengono elaborati automaticamente ed eliminati dai nostri server pochi minuti dopo la conversione. Non visualizziamo né condividiamo mai i tuoi file.
Devo installare un software per convertire CSV in XML?
No. La conversione da CSV a XML avviene completamente online nel browser e funziona su Windows, Mac, Linux, Android e iPhone.
La conversione non è riuscita?
Nella maggior parte dei casi, la causa è un formato di file errato. Carica un file CSV valido per questa conversione da CSV a XML. A volte il problema può dipendere anche da noi. Analizziamo gli errori di conversione ricorrenti e disattiviamo o ripariamo il convertitore se rileviamo un difetto.