Parti dalla struttura dei dati

JSON rappresenta oggetti, array, stringhe, numeri, booleani e null. CSV è una tabella di campi e record, senza lo stesso sistema di tipi integrato. Usa CSV per una struttura regolare di righe e colonne. Mantieni JSON per oggetti annidati o liste di lunghezza variabile. Una tabella ordinata non dimostra che tutte le relazioni originali siano sopravvissute.

Mantieni gli identificatori come testo

Un codice come 00127 è un identificatore, non necessariamente il numero 127. Salvalo come testo e importa come testo anche la relativa colonna del foglio di calcolo. Lo stesso vale per telefoni e identificatori numerici molto grandi. I normali numeri JavaScript non rappresentano esattamente ogni intero oltre 9.007.199.254.740.991. Se la precisione conta, usa stringhe tra virgolette o uno strumento che supporti esplicitamente l’intervallo richiesto.

Affida CSV a un parser

Una virgola in un campo tra virgolette è un dato, non un separatore di colonne. Il campo può anche contenere un ritorno a capo, e le virgolette doppie interne devono essere gestite con escape. Suddividere ogni riga alle virgole non basta. Controlla delimitatore, intestazione, nomi duplicati e numero di campi previsto. Non eliminare silenziosamente i record che non superano la validazione.

Definisci la mappatura dei valori annidati

Un ordine con più articoli richiede una regola esplicita. Puoi usare una tabella articoli separata con l’ID dell’ordine, oppure mantenere la lista come testo JSON in una cella. L’appiattimento può generare nomi ambigui se le chiavi contengono già il separatore scelto. Documenta la mappatura e applicala anche durante la reimportazione. Ordinare le chiavi di un oggetto non equivale a riordinare un array.

Verifica prima un piccolo percorso completo

Converti un campione rappresentativo, importalo nuovamente e confronta numero di record e valori selezionati. Includi accenti, stringhe vuote, null, virgolette e testo su più righe. Aprendo CSV non attendibili in un foglio di calcolo, verifica le celle che potrebbero diventare formule e usa le opzioni di importazione come testo. Conserva sorgente e impostazioni. Questi controlli trovano cambiamenti di significato invisibili a un messaggio di download riuscito.

Contenuto editoriale basato sulle fonti indicate di seguito.

www.rfc-editor.org · developer.mozilla.org