Convertir JSON en CSV

Convertit un tableau d'objets JSON au format CSV.


Que fait la conversion de JSON en CSV ?

Le JSON renvoyé par une API est un format destiné aux machines : un tableur ne peut donc pas l'ouvrir tel quel. Cet outil lit un tableau d'objets JSON et le convertit en CSV, les clés formant la ligne d'en-tête et chaque élément une ligne. Le résultat se prête au calcul et au tri dans Excel ou Google Sheets.

Deux hypothèses s'appliquent. La première : l'entrée doit être un tableau d'objets — encadrez un objet unique par un tableau avant de le saisir. La seconde concerne l'imbrication profonde : lorsqu'une valeur est elle-même un objet ou un tableau, elle n'est pas déployée en colonnes mais placée dans la cellule sous forme de chaîne JSON. Un aplatissement préalable rend le résultat plus commode.

Étapes pour convertir du JSON en CSV

  1. Coller votre JSON Collez un tableau d'objets dans le champ de saisie. Copier directement une réponse d'API convient parfaitement.
  2. Vérifier le résultat de la conversion Les clés deviennent la ligne d'en-tête et chaque élément devient une ligne. Vérifiez que les colonnes attendues sont bien présentes.
  3. Télécharger le CSV L'encodage est l'UTF-8. Si le texte s'affiche de façon illisible dans Excel, précisez l'UTF-8 lors de l'importation.

Astuces pour en tirer le meilleur parti

  • L'entrée doit être un tableau d'objets JSON ([{}, {}, ...]). Les objets individuels ne sont pas pris en charge.
  • Très utile pour travailler avec les données de réponse d'une REST API dans Excel ou Google Sheets.
  • Les valeurs dans des objets ou tableaux profondément imbriqués ne sont pas aplaties — elles sont affichées comme une chaîne JSON (ex. : {"a":1}).
  • Le CSV téléchargé est encodé en UTF-8. Si vous voyez des caractères étranges dans Excel, ouvrez-le en UTF-8 avec BOM.

Quand la conversion JSON vers CSV est utile

Exploiter une réponse d'API

Convertissez en CSV les données récupérées et vous pourrez les traiter directement avec les fonctions du tableur ou un tableau croisé dynamique.

Partager avec des non-développeurs

Remettez les données sous forme de tableau à quelqu'un qui ne sait pas lire du JSON brut. Demander une relecture ou une correction en devient bien plus simple.

Utiliser le CSV comme format intermédiaire de migration

Pratique pour convertir des données en route vers un outil acceptant l'import CSV — et beaucoup de services le font.

Vérifier le nombre d'enregistrements et les manques

Dans un tableau, le nombre de lignes et les cellules vides sautent aux yeux, ce qui convient pour contrôler que vous avez bien le nombre d'enregistrements prévu.

Les termes du JSON et du CSV

Tableau d'objets
Une structure alignant plusieurs objets sous la forme [{...}, {...}]. Chacun correspondant à une ligne de tableau, elle peut être convertie en CSV.
Clé
Le nom qui désigne une valeur à l'intérieur d'un objet. En CSV, elle devient un nom de colonne dans la ligne d'en-tête.
Imbrication
Une structure où une valeur contient à son tour un objet ou un tableau. C'est précisément la partie qui ne se loge pas simplement dans un tableau.
Aplatissement
Le déploiement des structures imbriquées sur un seul niveau. Effectué au préalable, il permet de les traiter comme des colonnes CSV.
BOM
Un marqueur d'ordre des octets placé en tête de fichier pour signaler l'encodage. On l'utilise quand on veut qu'Excel ouvre correctement un CSV en UTF-8.

Foire aux questions

Non, l'outil accepte uniquement un tableau d'objets JSON ([{}, {}]). Si vous avez un objet individuel, enveloppez-le d'abord dans un tableau (ex. : [{}]).

Les valeurs profondément imbriquées ne sont pas aplaties — elles s'affichent comme une chaîne JSON (ex. : {"a":1} pour un objet). Aplatissez votre structure JSON avant la conversion si vous avez besoin de ces valeurs dans des colonnes séparées.

Le CSV téléchargé est encodé en UTF-8. Dans Excel, utilisez « Données » → « À partir du texte/CSV » pour l'importer et sélectionnez UTF-8 avec BOM comme encodage.
Tool-kun

Anecdote — L'origine de JSON : « découvert », pas inventé

JSON (JavaScript Object Notation) a été formalisé par Douglas Crockford vers 2001. Il a déclaré qu'il n'avait pas inventé JSON — il l'avait découvert : il a simplement standardisé la syntaxe des littéraux d'objets déjà présente en JavaScript comme format d'échange de données.

À partir de 2006, JSON s'est répandu rapidement avec l'essor d'Ajax (communication asynchrone). Sa simplicité par rapport à la verbosité de XML a conquis les développeurs. Bien que les premiers critiques disaient que « JSON ne peut pas remplacer XML », c'est aujourd'hui le format de données standard des REST APIs.

Pour l'anecdote, Crockford a inclus la clause « The Software shall be used for Good, not Evil. » dans l'avis de copyright de la spécification JSON. Cela a provoqué un petit remue-ménage lorsque les services juridiques de grandes entreprises comme Google et IBM ont demandé une licence formelle car ils ne pouvaient pas s'engager à déterminer ce qui est « bien ».