Le CSV stocke les données sous forme de lignes de texte plates séparées par des virgules, tandis que le JSON les stocke sous forme d'objets et de tableaux typés et imbriqués. Choisissez le CSV pour les tableaux que l'on ouvre dans un tableur ou que l'on charge dans une base de données, et le JSON pour les données que le code échange via des API et des fichiers de configuration.
La suite de ce guide compare les deux formats côte à côte, montre les mêmes données dans chacun et explique quand il est utile de passer de l'un à l'autre.
Sur cette page
À retenir
- Le CSV est plat et sans types ; le JSON prend en charge les types, l'imbrication et les tableaux.
- Les fichiers CSV sont généralement plus légers pour les grands tableaux, car les clés ne sont pas répétées à chaque ligne.
- Les tableurs et les bases de données préfèrent le CSV ; les API web et JavaScript préfèrent le JSON.
- Les tableaux plats se convertissent proprement dans les deux sens ; le JSON imbriqué doit être aplati pour devenir du CSV.
Les mêmes données en CSV et en JSON
id,name,city,active
1,Ana,Lisbon,true
2,Ben,Leeds,false[
{ "id": 1, "name": "Ana", "city": "Lisbon", "active": true },
{ "id": 2, "name": "Ben", "city": "Leeds", "active": false }
]Le CSV nomme chaque colonne une seule fois. Le JSON répète les clés dans chaque objet, mais indique que id est un nombre et active un booléen.
CSV et JSON : comparaison côte à côte
| CSV | JSON | |
|---|---|---|
| Structure | Tableau plat de lignes et de colonnes | Objets et tableaux, imbriqués à n'importe quelle profondeur |
| Types de données | Texte uniquement | Chaîne, nombre, booléen, null, objet, tableau |
| Norme | RFC 4180 (informelle) | RFC 8259 |
| Taille pour les grands tableaux | Plus léger | Plus lourd, les clés se répètent à chaque ligne |
| S'ouvre dans un tableur | Oui, directement | Nécessite d'abord une conversion |
| Utilisé par les API web | Rarement | Presque toujours |
| Lisibilité | Facile pour les tableaux | Facile pour les enregistrements imbriqués |
| Schéma | Ligne d'en-tête uniquement | Facultatif, via JSON Schema |
Quand le CSV est-il le meilleur choix ?
- Le travail sur tableur. Les analystes peuvent ouvrir un CSV dans Excel ou Google Sheets immédiatement. Le convertir avec CSV en Excel évite les suppositions d'Excel sur les zéros et les dates.
- Les imports en masse dans des bases de données, des CRM et des boutiques en ligne.
- Les très grands jeux de données plats, pour lesquels répéter les clés alourdirait le fichier.
- Les données partagées avec des non-développeurs, qui ont rarement envie de lire des accolades et des guillemets.
Quand le JSON est-il le meilleur choix ?
- Les API et les applications web. JavaScript lit le JSON nativement, et chaque langage côté serveur dispose d'un analyseur.
- Les données imbriquées, comme une commande avec plusieurs lignes d'articles ou un utilisateur avec une liste d'adresses.
- Les valeurs typées, quand votre code doit savoir qu'une valeur est un nombre, un booléen ou qu'elle manque.
- Les fichiers de configuration et de contenu que les développeurs modifient et relisent.
Passer du CSV au JSON et inversement
Les tableaux plats se convertissent proprement dans les deux sens. CSV en JSON transforme chaque ligne en objet aux valeurs typées, et JSON en CSV fait l'inverse, en écrivant les objets imbriqués dans une seule cellule sous forme de texte JSON.
Pour le détail du typage des valeurs, lisez comment les en-têtes, les nombres et les cellules vides d'un CSV deviennent du JSON.
De combien le JSON est-il plus lourd pour les mêmes données ?
Comme le JSON répète chaque clé dans chaque enregistrement, le surcoût augmente avec le nombre de lignes. Dans l'exemple ci-dessus, le CSV nomme les colonnes une seule fois sur une ligne d'en-tête, alors que le JSON réécrit "id", "name", "city" et "active" pour chaque ligne. Avec dix colonnes et 100 000 lignes, ces clés répétées peuvent facilement doubler la taille du fichier par rapport au CSV.
La compression réduit fortement l'écart, car les clés répétées se compressent très bien : c'est pourquoi les API envoient volontiers du JSON compressé en gzip. Pour les fichiers que vous stockez ou envoyez par e-mail sans compression, le CSV reste le choix le plus léger pour les grands tableaux plats.
CSV ou JSON : FAQ
Le JSON est-il meilleur que le CSV ?
Aucun n'est meilleur dans l'absolu. Le CSV convient aux tableaux plats et aux tableurs ; le JSON convient aux données typées et imbriquées utilisées par le code et les API.
Lequel est le plus léger, le CSV ou le JSON ?
Le CSV, pour les grands tableaux plats, car le JSON répète chaque clé dans chaque enregistrement.
Excel peut-il ouvrir des fichiers JSON ?
Excel peut importer du JSON via Power Query, mais convertir d'abord le JSON en CSV ou en XLSX est généralement plus rapide.
Le CSV peut-il stocker des données imbriquées ?
Pas directement. Les valeurs imbriquées doivent être aplaties en colonnes supplémentaires ou stockées sous forme de texte dans une seule cellule.
Comment convertir un CSV en JSON ?
Utilisez un convertisseur CSV en JSON. La ligne d'en-tête devient les clés et chaque ligne devient un objet dans un tableau JSON.
Choisissez le format dont l'étape suivante a besoin
Utilisez le CSV quand des personnes et des tableurs interviennent ensuite, et le JSON quand ce sont du code et des API. Comme les données plates se convertissent proprement dans les deux sens, chaque étape de votre travail peut garder le format qui lui convient.