Converti csv in xml

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

Uploading…
I file selezionati superano il limite totale di 75 MB. Seleziona file meno numerosi o più piccoli.

Il tuo file viene elaborato istantaneamente e non viene archiviato sui nostri server.

Come convertire csv in xml file

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

  1. Apri il convertitore da CSV a XML su 101convert.com.
  2. Seleziona o carica il file .csv di origine.
  3. 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.
  4. Seleziona UTF-8 quando i dati contengono caratteri accentati, testo non latino o simboli.
  5. 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.
  6. Avvia la conversione e scarica il file .xml risultante.

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 00125 quando 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.

Confronto dei formati CSV e XML
Proprietà .CSV Comma-Separated Values .XML Extensible Markup Language
Leggibile come testo semplice
Tipi di dati Tipizzato Tipizzato
Strutture nidificate No
Formule No No
Più tabelle o fogli No
Dimensione tipica del file Piccolo Piccolo
Standard aperto
Ideale per Scambio dati Scambio dati
Introdotto 1998
Sviluppatore W3C
Tipo MIME text/csv application/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.

Altre conversioni di file .csv

Conversione inversa

Conversione in .xml
da altri formati

Condividi sui social media: