Vai al contenuto principale

Convertire JSON in CSV

Il convertitore si aspetta un array JSON di oggetti e scrive una riga CSV per ogni oggetto. I record raramente hanno esattamente le stesse chiavi, quindi questa guida mostra come vengono scelte le colonne e cosa riempie i vuoti.

Esempio pratico

Ingresso (JSON)
[
  {"id": 1, "name": "Smith, Jane", "tags": ["admin", "ops"]},
  {"id": 2, "name": "Kim", "email": "[email protected]"},
  {"id": 3, "name": "Lee", "email": null}
]
Uscita (CSV)
id,name,tags,email
1,"Smith, Jane","admin,ops",
2,Kim,,[email protected]
3,Lee,,

La riga di intestazione elenca ogni chiave nell'ordine in cui compare per la prima volta: id, name, tags e poi email dal secondo oggetto. Smith non ha email e l'email di Lee è null, quindi entrambe le celle restano vuote. L'array tags viene scritto come admin,ops e messo tra virgolette perché contiene il delimitatore, proprio come "Smith, Jane".

Come lo gestisce il convertitore

  • I dati in ingresso devono essere un array JSON come [{...}, {...}]; un singolo oggetto da solo viene rifiutato.
  • Le colonne sono l'unione di tutte le chiavi degli oggetti, nell'ordine in cui ogni chiave compare per la prima volta.
  • Una chiave mancante o un valore null produce una cella vuota.
  • Numeri e booleani vengono scritti come testo semplice, per esempio 42 e true.
  • Gli array di valori semplici vengono scritti con i loro elementi uniti da virgole. Gli oggetti annidati, e gli array che contengono oggetti, vengono scritti come JSON compatto all'interno della cella, quindi nessun dato va perso; appiattiscili prima (per esempio in address_city) se ti servono colonne separate.
  • I valori che contengono il delimitatore, una virgoletta o un a capo vengono racchiusi tra virgolette doppie, con le virgolette interne raddoppiate.

Altre guide alla conversione