En quoi consiste cet outil ?
Les API et les bases de données renvoient généralement des données au format JSON, mais les tableurs (Excel, Google Sheets) et la plupart des outils d'importation de données nécessitent le format CSV. Cet outil comble cette lacune : il suffit de coller un tableau d'objets JSON (comme une réponse d'API) pour qu'il génère un fichier CSV comportant une colonne par clé unique et une ligne par objet.
La conversion gère les détails qui posent problème aux approches simplistes : les valeurs contenant des virgules ou des guillemets sont correctement échappées, les champs manquants sont remplacés par des cellules vides au lieu de provoquer un échec de la conversion, et les objets ou tableaux imbriqués à l'intérieur d'un champ sont sérialisés sous forme de chaîne JSON dans cette cellule plutôt que d'être ignorés sans avertissement.
Pourquoi l'utiliser ?
- Détection automatique des en-têtes — la liste des colonnes est constituée de l'union des clés de tous les objets, ce qui évite que des enregistrements incohérents n'altèrent le résultat.
- Échappement CSV correct : les valeurs contenant des virgules, des guillemets ou des sauts de ligne sont correctement mises entre guillemets, ce qui permet d'ouvrir le fichier sans problème dans Excel ou Google Sheets.
- Gère les données imbriquées : un objet ou un tableau contenu dans un champ est sérialisé au format JSON au lieu de générer une erreur.
- Copiez dans le presse-papiers ou téléchargez directement sous forme de fichier .csv.
- 100 % côté client : vos données (réponses API, enregistrements exportés) ne sont jamais transmises où que ce soit.
Mode d'emploi
- Collez un tableau JSON d'objets, par exemple [{"name":"Alice","age":30},{"name":"Bob","age":25}].
- Cliquez sur « Convertir au format CSV ».
- Consultez le résultat : copiez-le ou cliquez sur « Télécharger le fichier CSV » pour enregistrer un fichier.
- Ouvrez le fichier téléchargé dans Excel, Google Sheets ou tout autre tableur.
Exemple
Entrée
[{"name":"Alice","age":30},{"name":"Bob","city":"NYC"}]Résultat
name,age,city
Alice,30,
Bob,,NYCRemarquez que les colonnes « ville » et « âge » apparaissent toutes les deux, même si aucun objet ne présente ces deux caractéristiques à la fois — les valeurs manquantes sont simplement laissées vides.
Conseils pratiques
- Conversion d'une réponse API pour un rapport sous forme de feuille de calcul : collez le tableau JSON directement depuis l'onglet « Réseau » d'un navigateur ou depuis un outil de test d'API, convertissez-le, puis téléchargez-le — aucun script intermédiaire n'est nécessaire.
- Traitement d'enregistrements hétérogènes (par exemple, des champs facultatifs issus de l'exportation d'un formulaire) : grâce à la détection automatique des en-têtes, vous n'avez pas besoin de faire correspondre manuellement les schémas au préalable.
- Si votre JSON est un objet unique de grande taille contenant un tableau imbriqué (par exemple {"users": [...]}), extrayez uniquement la partie correspondant au tableau (la partie [...]), puis collez-la ici.
Pourquoi l'ordre des colonnes et l'exhaustivité sont-ils importants ?
Un bug CSV subtil mais courant se produit lorsque les données sont exportées en saisissant d’abord les en-têtes manuellement, en espérant que chaque ligne corresponde : si la ligne 50 sur 1 000 comporte un champ supplémentaire que n’avait aucune des lignes précédentes, un générateur CSV naïf, traitant ligne par ligne, soit ignore ce champ sans rien signaler, soit décale toutes les colonnes suivantes, ce qui rompt l’alignement. Cet outil évite ce type d'erreur en analysant d'abord chaque objet du tableau afin de construire une ligne d'en-tête complète et correcte avant d'écrire la moindre ligne de sortie. Ainsi, un champ qui n'apparaît qu'une seule fois, sur le tout dernier objet, dispose tout de même de sa propre colonne, et la valeur correspondante de toutes les autres lignes s'affiche correctement comme vide, sans corrompre la structure des lignes.
Foire aux questions
Est-ce que cela fonctionne avec un seul objet JSON plutôt qu'avec un tableau ?
Il attend un tableau : placez un seul objet entre crochets, par exemple remplacez {"name":"Alice"} par [{"name":"Alice"}], et il sera converti en un fichier CSV à une seule ligne.
Que deviennent les objets ou tableaux imbriqués à l'intérieur d'un champ ?
Ils sont sérialisés sous forme de chaîne JSON au sein de cette cellule (par exemple, un champ contenant {"a":1} devient le texte « {""a"":1} » dans le fichier CSV, avec les guillemets correctement échappés), au lieu de provoquer une erreur ou d'être ignorées. Si vous avez besoin de données imbriquées aplaties en colonnes distinctes, cela nécessite un outil différent, spécifique au schéma.
Mes données sont-elles transférées sur un serveur ?
Non. La conversion s'effectue entièrement en JavaScript dans votre navigateur : aucune donnée n'est transmise à l'extérieur, ce qui garantit une utilisation en toute sécurité avec des données clients ou d'entreprise exportées.
Pourquoi mon fichier CSV contient-il des cellules vides ?
Si certains objets de votre tableau ne possèdent pas une clé que d'autres ont, cette colonne existe bel et bien, mais la cellule reste vide pour les objets qui ne la possèdent pas — cela permet de conserver toutes vos données au lieu de générer une erreur en cas d'enregistrements incohérents.
Les valeurs séparées par des virgules risquent-elles de corrompre le fichier CSV ?
Non. Toute valeur contenant une virgule, un guillemet ou un saut de ligne est automatiquement placée entre guillemets (les guillemets internes étant échappés) conformément aux règles CSV standard, ce qui permet de l'ouvrir correctement dans Excel et Google Sheets.