Un file di dati sembra spesso semplice: colonne, righe e valori. Molti problemi emergono però quando bisogna pulire, confrontare, unire o convertire le informazioni. Una colonna può cambiare nome, un separatore CSV può essere interpretato male, un numero può diventare testo o due file possono descrivere la stessa informazione con strutture differenti.
La struttura conta più dell’estensione
In una tabella classica ogni riga rappresenta in genere un record e ogni colonna un attributo. Un file clienti può avere id, nome, email e paese.
L’intestazione dà significato ai valori. Se due file usano email e indirizzo_email, una fusione automatica non può sempre capire che si tratta della stessa colonna.
CSV: semplice e portabile
CSV significa Comma-Separated Values, ma il separatore non è sempre una virgola. Secondo software e impostazioni regionali può essere punto e virgola, tabulazione o altro carattere.
Un CSV è testo: non conserva formule, colori, più fogli o formattazione di Excel. Questa semplicità lo rende portabile ma richiede attenzione a separatori, virgolette, encoding e ritorni a capo nelle celle.
Il Validatore CSV aiuta a controllare la struttura.
TSV
TSV segue la stessa logica ma usa una tabulazione come separatore. CSV e TSV restano formati tabulari piatti: descrivono righe e colonne, non gerarchie complesse.
Excel: più di una tabella di valori
Un file Excel può contenere più fogli, formule, tipi di celle, date e formattazione. Convertendo in CSV, una parte di questa ricchezza non può essere rappresentata.
L’obiettivo è spesso estrarre una tabella di dati utilizzabile, non riprodurre il foglio in ogni dettaglio.
JSON: oggetti e strutture annidate
JSON può rappresentare oggetti, liste e strutture gerarchiche. Una tabella CSV si converte naturalmente in una lista di oggetti: ogni riga diventa un oggetto e ogni intestazione una chiave.
L’operazione inversa richiede che gli oggetti possano essere riportati a colonne coerenti. Con sotto-oggetti e array diversi per riga, bisogna scegliere se appiattire, ignorare o conservare JSON come formato principale.
Tipi di valori
00123, 123 e "123" possono avere significati differenti. Un CAP, ID o codice prodotto non deve necessariamente diventare un numero. Le date sono altrettanto ambigue: 01/02/2026 può essere interpretato in modi diversi.
Prima della conversione, identifica quali colonne sono realmente numeriche, testuali, date o identificativi.