Utilia

Convertisseur JSON en CSV

Convertissez du JSON en CSV et du CSV en JSON dans votre navigateur. Clés imbriquées aplaties, séparateur détecté, aucune donnée envoyée.

Conversion

Comment convertir du JSON en CSV

  1. Choisissez le sens de conversion : JSON → CSV ou CSV → JSON.
  2. Collez vos données dans la zone de saisie, ou cliquez sur Ouvrir un fichier pour charger un fichier .json, .csv ou .tsv depuis votre ordinateur (10 Mo au maximum).
  3. Choisissez le Séparateur. Pour lire un CSV, la Détection automatique trouve en général le bon ; pour écrire un CSV, elle utilise la virgule.
  4. Réglez les options propres au sens choisi, puis cliquez sur Convertir. Le résultat se met aussi à jour pendant la saisie.
  5. Copiez ou téléchargez le résultat. Inverser le sens replace le résultat dans la zone de saisie pour faire la conversion inverse.

Du JSON vers le CSV

Un fichier CSV est un tableau à plat : une ligne d’en-têtes avec le nom des colonnes, puis une ligne par enregistrement. Le JSON, lui, est une arborescence. L’outil doit donc décider comment les enregistrements et les valeurs imbriquées deviennent des lignes et des colonnes.

  • Un tableau d’objets donne une ligne par objet. Les colonnes réunissent toutes les clés rencontrées, dans leur ordre d’apparition : un objet auquel il manque une clé obtient simplement une cellule vide.
  • Un objet qui ne contient qu’un tableau, comme {"items": [ … ]}, forme très courante des réponses d’API, est déballé : chaque élément devient une ligne. Tout autre objet donne une seule ligne.
  • Un tableau de tableaux est déjà un tableau : il est écrit tel quel, sans ligne d’en-têtes.
  • Avec Aplatir les clés imbriquées (adresse.ville), les objets imbriqués deviennent des noms de colonnes pointés : {"adresse": {"ville": "Lyon"}} produit la colonne adresse.ville. Les tableaux reçoivent des colonnes numérotées : tags.0, tags.1… Sans cette option, la valeur imbriquée est écrite dans une seule cellule, sous forme de texte JSON.

Les valeurs qui contiennent le séparateur, des guillemets ou des retours à la ligne sont placées entre guillemets selon la RFC 4180, le format que lisent Excel, LibreOffice et Google Sheets. null devient une cellule vide.

Neutraliser les formules

Dans un tableur, une cellule qui commence par =, +, - ou @ peut être exécutée comme une formule : c’est l’injection CSV. Si vos données proviennent d’utilisateurs ou d’une source peu fiable, cochez Neutraliser les formules de tableur : ces cellules de texte sont précédées d’une apostrophe et s’affichent comme du texte ordinaire.

Du CSV vers le JSON

  • La première ligne contient les en-têtes : chaque ligne devient un objet dont les clés sont les noms de colonnes. Décochez l’option pour obtenir un tableau de tableaux.
  • Convertir les nombres et les booléens : 42 devient un nombre, true un booléen et une cellule vide devient null. Décochez l’option pour tout garder en texte, par exemple pour conserver le zéro initial d’un code postal ou d’un numéro de téléphone.
  • Reconstruire les objets imbriqués à partir des en-têtes pointés fait l’opération inverse de l’aplatissement : les en-têtes adresse.ville et tags.0 donnent {"adresse": {"ville": …}, "tags": [ … ]}. L’aller-retour JSON → CSV → JSON restitue donc la structure d’origine dans les cas courants.

Si certaines lignes comptent plus ou moins de champs que l’en-tête, la conversion a lieu quand même, mais un avertissement indique la ligne de la première anomalie pour que vous puissiez la vérifier.

Questions fréquentes

Mes données sont-elles envoyées sur Internet ?

Non. La conversion se fait entièrement dans votre navigateur : rien de ce que vous collez ou ouvrez n’est transmis à un serveur. Vous pouvez donc convertir sans crainte des exports qui contiennent des données clients ou internes.

Pourquoi Excel affiche-t-il mon CSV dans une seule colonne ?

Excel utilise le séparateur de liste du système. En français, c’est généralement le point-virgule. Choisissez Point-virgule (;) comme séparateur avant de convertir, ou passez par l’assistant d’importation d’Excel en précisant la virgule.

Comment sont traités les tableaux d'objets imbriqués ?

Avec l’aplatissement, chaque élément reçoit ses propres colonnes, par exemple commandes.0.id et commandes.1.id. C’est pratique pour des tableaux courts. Pour de longues listes, mieux vaut convertir ce tableau à part afin que chaque élément devienne une ligne.

Pourquoi mes codes postaux ont-ils perdu leur zéro initial ?

Quand Convertir les nombres et les booléens est coché, 01234 est lu comme le nombre 1234. Décochez l’option pour conserver chaque valeur exactement comme dans le CSV.

Quelle est la taille maximale ?

Vous pouvez ouvrir des fichiers jusqu’à 10 Mo. Coller davantage de texte fonctionne aussi, mais le navigateur ralentit avec de très grandes zones de texte : découpez d’abord les fichiers volumineux.