MiServe DevTools

I tuoi adesivi

Fissa qui gli strumenti. Restano salvati in questo browser.

Convertitore da CSV a JSON

Converti CSV in JSON e JSON in CSV, con campi tra virgolette, separatore virgola, punto e virgola, tab o pipe, riconoscimento dei tipi e anteprima della tabella.

Output JSON

Funziona nel tuo browser. Nulla di ciò che incolli viene caricato.

Informazioni su questo strumento

Cos'è il CSV, e in cosa i file differiscono

La RFC 4180 descrive il CSV come record separati da a capo e campi separati da virgole. Un campo che contiene una virgola, delle virgolette o un a capo va racchiuso tra virgolette doppie, e le virgolette al suo interno si scrivono due volte. Il formato non ha tipi, quindi ogni valore è testo, e un file non può dichiarare quale separatore o quale codifica dei caratteri usa.

I file reali variano. Un foglio di calcolo impostato su una regione che scrive i decimali con la virgola di solito esporta con il punto e virgola, gli strumenti dei database esportano spesso con il tab, e i fine riga possono essere CRLF, LF o CR. Questo strumento li legge tutti, rimuove il byte order mark, salta le righe vuote e tiene come testo le virgolette isolate dentro un campo senza virgolette.

Come il CSV diventa JSON

Con il separatore su Automatico, lo strumento divide le prime 20 righe con la virgola, il punto e virgola, il tab e la pipe, e assegna a ciascuno un punteggio in base al numero di colonne che ottiene e a quante righe hanno quello stesso numero. Un separatore che lascia virgolette in mezzo a un campo ottiene un punteggio più basso. L'anteprima mostra il risultato, quindi una scelta sbagliata è facile da notare e da correggere a mano.

Con Riconosci i tipi, un campo vuoto diventa null, true e false diventano booleani, e un semplice numero decimale diventa un numero JSON scritto esattamente com'era, quindi 49.90 resta 49.90. Tutto il resto rimane una stringa, compresi i valori che sembrano soltanto numeri: 007, +39 e 1e5 sono più spesso codici che quantità.

Una riga con meno o più campi dell'intestazione viene comunque convertita, e il suo numero di riga viene segnalato. Nell'array di oggetti le chiavi mancanti vengono omesse e i campi in più prendono il nome column_N in base alla loro posizione. Una cella dell'intestazione vuota riceve lo stesso tipo di nome, e un nome ripetuto riceve un suffisso come _2, così nessun valore ne sovrascrive un altro.

Come il JSON diventa CSV

Un array di oggetti diventa una riga per ogni oggetto. L'intestazione è l'unione di tutte le chiavi, nell'ordine in cui compaiono la prima volta, e un oggetto a cui manca una chiave riceve un campo vuoto. Un array o un oggetto annidato viene scritto nella sua cella come testo JSON, e null diventa un campo vuoto. Un array di array viene scritto riga per riga così com'è.

I campi vengono messi tra virgolette solo quando contengono il separatore, delle virgolette o un a capo. Il file scaricato separa i record con CRLF, come prevede la RFC 4180.

Domande

Il mio file viene caricato?

No. Il file viene letto dal browser e convertito sul tuo dispositivo. Lo strumento non fa alcuna richiesta di rete con il file, e la policy di sicurezza del sito blocca le richieste verso qualsiasi altro host.

Perché un valore come 007 resta una stringa?

I numeri JSON non possono avere zeri iniziali, e trasformare 007 in 7 farebbe perdere informazioni in un CAP o in un codice prodotto. Lo strumento converte solo i semplici numeri decimali. Disattiva il riconoscimento dei tipi per tenere ogni valore come stringa.

E se viene rilevato il separatore sbagliato?

Scegli tu il separatore dall'elenco. Il rilevamento guarda le prime 20 righe e può essere tratto in inganno da un file con una sola colonna o con righe molto irregolari. La riga accanto al titolo dell'anteprima indica il separatore rilevato.

Come vengono gestiti gli a capo dentro una cella?

Un campo tra virgolette doppie può contenere a capo, che nella stringa JSON diventano \n. I numeri di riga negli avvisi sono righe del file, quindi dopo un campo del genere sono più alti dei numeri delle righe della tabella.

Altri strumenti in Dati