Mode d’emploi : Convertisseur CSV JSON
- Choisissez le sens de conversion (CSV → JSON ou JSON → CSV).
- Collez votre contenu dans la zone de saisie ou chargez un fichier .csv, .tsv ou .json avec Ouvrir un fichier. Pour un résultat fiable, utilisez de préférence des fichiers enregistrés en UTF-8.
- La détection automatique du séparateur suffit généralement, y compris pour les CSV à point-virgule de la version française d’Excel. Si la première ligne ne contient pas les noms des colonnes, décochez « Première ligne = en-têtes ».
- Cliquez sur Convertir, puis copiez le résultat ou enregistrez-le dans un fichier. Le CSV est enregistré en UTF-8 avec BOM, pour que les accents (é, è, à, ç…) s’affichent correctement dans Excel.
À quoi ressemble un CSV converti en JSON ?
Si la première ligne sert d’en-tête, chaque ligne devient un objet de la forme "nom de colonne": valeur, et l’ensemble forme un tableau d’objets.
| CSV | Résultat JSON |
|---|---|
nom,âgeMarie Dubois,31 | [{"nom": "Marie Dubois", "âge": 31}] |
Avec l’option de conversion automatique activée, une cellule composée uniquement de chiffres comme 31 devient un nombre, et true / false deviennent des booléens. En revanche, les valeurs qui commencent par 0 (code postal 01000, numéro de téléphone 06…) restent des chaînes de caractères, afin que le zéro initial ne disparaisse pas.
Une colonne sans en-tête reçoit un nom comme « Colonne 3 », et si le même en-tête apparaît deux fois, le second reçoit le suffixe _2.
Attention aux nombres décimaux écrits à la française avec une virgule (3,5) : en JSON, les nombres s’écrivent toujours avec un point (3.5). Vérifiez donc le résultat si votre fichier contient ce type de valeurs.
Règles de conversion du JSON en CSV (Excel)
- Pour un tableau d’objets, toutes les clés rencontrées dans les objets sont réunies pour former les en-têtes de colonnes. Si une clé manque dans un objet, la cellule correspondante reste vide.
- Les objets imbriqués sur un niveau sont dépliés en colonnes reliées par un point, par exemple
adresse.ville. Les valeurs plus profondes et les tableaux sont placés tels quels, sous forme de texte JSON, dans une seule cellule. - Un tableau de tableaux (
[[1,2],[3,4]]) est recopié directement en lignes et en colonnes, sans en-tête. - Si une valeur contient une virgule, des guillemets ou un saut de ligne, elle est entourée de guillemets doubles selon la norme RFC 4180, et les guillemets internes sont doublés. Excel, LibreOffice Calc et Google Sheets lisent ce format sans problème.
Virgule ou point-virgule : le cas des CSV français
En France, en Belgique, en Suisse et dans une partie du Canada, la virgule sert de séparateur décimal. C’est pourquoi Excel en français enregistre souvent les fichiers « CSV (séparateur : point-virgule) » avec des points-virgules plutôt que des virgules. La détection automatique choisit le séparateur le plus fréquent parmi la virgule, la tabulation, le point-virgule et la barre verticale ; vous pouvez aussi l’imposer dans la liste « Séparateur ».
Le CSV produit par l’outil utilise des virgules. Si Excel affiche tout dans une seule colonne à l’ouverture, passez par l’import de données (voir ci-dessous) et indiquez la virgule comme séparateur.
Que faire si les accents s’affichent mal dans Excel ?
Lorsqu’il ouvre un CSV en UTF-8 sans BOM (un marqueur invisible placé au début du fichier), Excel affiche souvent les accents de travers, par exemple « é » au lieu de « é ». Les CSV enregistrés avec Tooljip comportent un BOM UTF-8 : un double-clic suffit pour les ouvrir avec des accents corrects.
À l’inverse, les fichiers enregistrés par d’anciennes versions d’Excel au format « CSV » classique sont souvent encodés en Windows-1252 (ANSI). Si les caractères accentués apparaissent mal après l’ouverture dans l’outil, convertissez d’abord le fichier en UTF-8 avec l’outil Convertisseur d’encodage de texte, ou enregistrez-le à nouveau depuis Excel au format « CSV UTF-8 ».
Si Excel transforme un nombre en 1,23E+11 ou supprime le zéro initial, le fichier CSV n’est pas en cause : c’est Excel qui change automatiquement le format à l’ouverture. Pour conserver ces colonnes telles quelles, importez le fichier via « Données > À partir d’un fichier texte/CSV » et définissez leur type sur Texte.