Convertir JSON en CSV
Collez un tableau JSON ou ouvrez un fichier .json et obtenez un CSV à ouvrir dans Excel, Google Sheets ou Numbers.
Fonctionne entièrement dans votre navigateur
Collez du JSON pour commencer.
Données jusqu'à environ 10 Mo, collées ou ouvertes depuis un fichier .json. Le résultat se met à jour pendant la saisie.
Comment convertir du JSON en CSV
- Collez votre JSON dans le champ, ou ouvrez un fichier .json. Un tableau d'objets donne une ligne par objet.
- Choisissez le séparateur et la façon d'écrire les objets imbriqués. Activez l'option Excel si le fichier sera ouvert dans Excel.
- Copiez le CSV ou téléchargez-le en fichier .csv.
Transformer du JSON en tableur
Les API et les exports fournissent souvent du JSON, alors que les personnes qui ont besoin des données veulent un tableur. Convertir le JSON en CSV fait le lien : chaque objet du tableau devient une ligne et chaque clé une colonne. Comme les objets de données réelles ont rarement tous les mêmes clés, l'outil rassemble toutes les clés qu'il rencontre, dans l'ordre où il les voit pour la première fois, et laisse une cellule vide quand un objet n'a pas de valeur pour cette colonne.
Un tableur est plat : les données imbriquées doivent donc être ramenées en colonnes d'une manière ou d'une autre. L'aplatissement transforme user.name et user.email en colonnes distinctes, ce qui convient à la plupart des rapports. Garder les objets imbriqués en texte JSON limite le nombre de colonnes et permet de reconstruire plus tard la structure d'origine.
Le CSV suit les règles habituelles (RFC 4180) : les valeurs ne sont mises entre guillemets que si nécessaire et les guillemets à l'intérieur d'une valeur sont doublés. Les nombres gardent les chiffres exacts de votre JSON au lieu d'être arrondis comme le seraient des nombres JavaScript.
Conseils
- Dans l'autre sens ? Utilisez CSV en JSON.
- Si le JSON ne se convertit pas, trouvez le problème avec Formater et valider du JSON.
- Comparez deux exports ligne par ligne avec Comparer deux textes.
Questions fréquentes
Mon JSON est-il envoyé en ligne ?
Non. Il est analysé et converti dans votre navigateur, et rien n'est envoyé nulle part ni conservé.
Quelles structures JSON fonctionnent ?
Un tableau d'objets (une ligne par objet, une colonne par clé), un tableau de tableaux (chaque tableau intérieur est une ligne), un tableau de valeurs simples (une colonne) ou un objet unique (une ligne). Les colonnes apparaissent dans l'ordre où les clés sont vues pour la première fois : un objet qui a une clé absente des autres ajoute une colonne, et les lignes qui ne l'ont pas reçoivent une cellule vide.
Comment les objets et tableaux imbriqués sont-ils traités ?
Avec Aplatir en chemins pointés, un objet imbriqué comme {"address": {"city": "Lyon"}} devient une colonne nommée address.city. Avec Garder en texte JSON, tout l'objet imbriqué va dans une seule cellule, en JSON. Les tableaux sont toujours écrits en texte JSON dans une seule cellule, car il n'existe pas de façon unique et correcte de répartir une liste sur plusieurs colonnes.
Pourquoi les accents s'affichent-ils mal quand j'ouvre le fichier dans Excel ?
Excel sous Windows suppose souvent un ancien encodage régional, sauf si le fichier commence par une marque d'ordre des octets (BOM). Activez Ajouter un BOM pour Excel avant de télécharger, et Excel lira le fichier en UTF-8. Google Sheets et Numbers lisent l'UTF-8 dans tous les cas. Si votre Excel attend des points-virgules, comme souvent en français, choisissez aussi le séparateur point-virgule.
Quand les valeurs sont-elles mises entre guillemets ?
Seulement quand c'est nécessaire : une valeur qui contient le séparateur, un guillemet double ou un saut de ligne, ou qui commence ou finit par une espace, est entourée de guillemets doubles, et tout guillemet à l'intérieur est doublé. Les nombres sont écrits exactement comme dans le JSON : les longs identifiants ne sont donc pas arrondis. null devient une cellule vide.
Pourquoi l'outil dit-il que mon JSON n'est pas valide ?
Le message donne la ligne et la colonne où la lecture s'est arrêtée. Les causes habituelles sont une virgule finale, des apostrophes au lieu de guillemets doubles ou un crochet manquant. L'outil Formater et valider du JSON montre l'endroit exact avec un repère.