JSON vers CSV

Collez un tableau JSON d’objets (la forme que la plupart des API renvoient pour les listes) et le convertisseur transforme chaque objet en une ligne CSV. Détecte automatiquement les en-têtes de colonnes à partir des clés, aplatit les objets imbriqués en colonnes en notation pointée et gère les tableaux en les joignant avec un séparateur ou en créant une colonne par index.

Comment convertir JSON en CSV

  1. 1

    Collez le tableau JSON

    Généralement `[{...}, {...}, ...]`. Si vous avez une charge utile enveloppée comme `{"data": [...]}`, fournissez le tableau intérieur.

  2. 2

    Choisissez le délimiteur et le style de guillemets

    Virgule, tabulation, point-virgule ou barre verticale. Choisissez de toujours mettre les champs entre guillemets ou seulement si nécessaire.

  3. 3

    Choisissez le traitement des objets imbriqués

    Aplatir en `user.name`, `user.email`, ou sérialiser en chaînes JSON dans une seule colonne.

  4. 4

    Téléchargez le CSV

    Enregistrez le CSV ou copiez-le. Les en-têtes vont sur la première ligne sauf si vous les désactivez.

Exemple

Entrée:

[
  { "id": 1, "user": { "name": "Alice", "email": "a@a.com" }, "tags": ["admin"] },
  { "id": 2, "user": { "name": "Bob",   "email": "b@b.com" }, "tags": ["user", "beta"] }
]

Sortie (aplatir imbriqué, joindre les tableaux):

id,user.name,user.email,tags
1,Alice,a@a.com,admin
2,Bob,b@b.com,"user,beta"

Choix du délimiteur

Délimiteur Utiliser quand
, (virgule) Par défaut, fonctionne avec Excel et Google Sheets
; (point-virgule) Locales Excel européennes qui traitent , comme décimal
\t (tabulation) Collage propre dans Google Sheets, évite les problèmes de guillemets
` ` (barre verticale)

Règles de mise entre guillemets

Un champ doit être mis entre guillemets lorsqu’il contient :

  • le délimiteur
  • un guillemet double (qui est échappé en doublant : " -> "")
  • un saut de ligne

“Toujours entre guillemets” est plus sûr pour la compatibilité entre outils ; “entre guillemets seulement si nécessaire” rend le fichier plus facile à lire manuellement.

Traitement des objets imbriqués

  • Aplatir : { user: { name: "A" } } devient une colonne user.name. Les chemins profonds deviennent a.b.c.d.
  • Chaîne JSON : l’objet imbriqué reste comme une valeur JSON à colonne unique : "{\"name\":\"A\"}". Utile lorsque les outils en aval peuvent le parser.
  • Stringifier : joint avec un séparateur, perdant la structure.

Gestion des tableaux

  • Joindre : ["a", "b"] devient "a,b" dans une seule colonne.
  • Colonnes indexées : produit tags.0, tags.1, tags.2, fonctionne uniquement lorsque la longueur du tableau est cohérente.
  • Premier élément seulement : prend tags[0] et ignore le reste.

Erreurs courantes

  • Clés inégales entre objets. Si un objet a phone et un autre ne l’a pas, le CSV obtient une colonne phone avec des cellules vides pour les lignes manquantes. Validez toujours que l’ensemble des clés est cohérent.
  • Oublier le BOM pour Excel. Excel sur Windows lit les CSV UTF-8 sans BOM comme Latin-1 et brouille les caractères accentués. L’outil propose un basculement “préfixer UTF-8 BOM” pour ce cas.
  • Incorporer des sauts de ligne dans les valeurs. Légal dans le CSV RFC 4180, mais certains importateurs ont des problèmes. Si votre cible est fragile, remplacez \n par un espace ou un token \\n.
  • Utiliser Excel comme format de retour. Excel convertit silencieusement 007 en 7, tronque les longs nombres et corrompt les zéros initiaux dans les ID. Pour l’intégrité des données, utilisez CSV avec un parseur approprié.

Questions fréquentes

Oui, le CSV est intrinsèquement tabulaire, ce qui correspond à [{...}, {...}, ...]. Si votre charge utile est enveloppée ({"data": [...]}), passez juste le tableau intérieur, ou laissez l’outil le détecter automatiquement.

Vous choisissez : aplatir en colonnes en notation pointée (user.name, user.email), garder comme chaînes JSON dans une seule colonne, ou stringifier avec un séparateur. Aplatir est la valeur par défaut et généralement ce que vous voulez.

Oui, si vous choisissez un délimiteur de virgule et que la locale correspond. Pour Excel européen, passez au point-virgule. Pour les caractères UTF-8, activez l’option “préfixer UTF-8 BOM” afin qu’Excel détecte l’encodage.

Non. La conversion se fait dans votre navigateur ; le JSON ne quitte jamais votre machine. Sûr pour les réponses API sensibles ou les exports de données internes.

Outils similaires

Outil disponible dans d’autres langues