BrowserTools
Accueil / Convertisseurs / Convertisseur CSV ↔ JSON

Convertisseur CSV ↔ JSON

Convertissez entre CSV et JSON en local avec des délimiteurs et un guillemetage personnalisés, sans téléversement ni limites.

Chargement de Convertisseur CSV ↔ JSON… Si rien ne se passe, activez JavaScript.

CSV (valeurs séparées par des virgules) et JSON (notation des objets JavaScript) sont les deux formats de texte brut les plus utilisés pour les données structurées. CSV trouve ses origines aux tout débuts de l'informatique ; les programmes sur ordinateur central échangeaient déjà des données tabulaires sous forme délimitée par des virgules dès les années 1960, mais le format n'a pas eu de spécification formelle avant la publication du RFC 4180 en octobre 2005. Cette absence de norme a engendré des décennies de dialectes incompatibles : certaines implémentations utilisent le point-virgule comme délimiteur, d'autres la tabulation ; certaines mettent tous les champs entre guillemets, d'autres seulement ceux qui contiennent des caractères spéciaux ; les fins de ligne varient d'un système à l'autre. Malgré ces particularités, CSV reste le format d'exportation universel pour les tableurs, les bases de données et les outils d'analyse de données, en raison de sa simplicité et de sa lisibilité pour les humains.

Exemples

Entrée name,age Ada,36 Bob,40
Sortie [{"name":"Ada","age":"36"},{"name":"Bob","age":"40"}]

La ligne d'en-tête devient les clés de l'objet ; chaque ligne suivante devient un objet.

Questions fréquentes

Mes fichiers sont-ils téléversés vers un serveur ?
Non. La conversion s'exécute entièrement dans votre navigateur à l'aide de JavaScript. Vos données ne sont jamais transmises sur le réseau, ce qui rend cet outil sûr pour des données d'entreprise sensibles, des informations personnelles identifiables ou des jeux de données confidentiels.
Qu'est-ce que le RFC 4180 et pourquoi est-il important ?
Le RFC 4180, publié en 2005, est ce qui se rapproche le plus d'une norme officielle pour CSV. Il définit les règles de mise entre guillemets des champs contenant des virgules, des sauts de ligne ou des guillemets doubles, et précise qu'un guillemet double à l'intérieur d'un champ entre guillemets est échappé en le doublant. L'analyseur de cet outil met en œuvre le RFC 4180, ce qui signifie qu'il traite correctement les fichiers produits par Excel, Google Sheets et la plupart des utilitaires d'exportation de bases de données.
Quels délimiteurs sont pris en charge ?
L'outil prend en charge la virgule, le point-virgule, la tabulation et la barre verticale comme délimiteurs. Les fichiers délimités par des points-virgules sont courants dans les paramètres régionaux européens où la virgule sert de séparateur décimal. Les fichiers délimités par des tabulations (TSV) sont fréquemment produits par les outils de bases de données et sont moins ambigus que CSV, car les valeurs de champ contiennent rarement des tabulations.
Comment sont gérés les champs entre guillemets et les virgules intégrées ?
Les champs contenant le caractère délimiteur, un guillemet double ou un saut de ligne doivent être encadrés par des guillemets doubles conformément au RFC 4180. Un guillemet double littéral à l'intérieur d'un tel champ est représenté par deux guillemets doubles consécutifs. L'analyseur gère correctement tous ces cas, de sorte qu'une valeur de champ comme She said, "hello" effectue l'aller-retour sans altération.
Qu'advient-il des types de données lors de la conversion de CSV vers JSON ?
CSV n'a pas de système de types, chaque valeur est une chaîne. Par défaut, le convertisseur conserve les valeurs sous forme de chaînes dans la sortie JSON. Si vous avez besoin que les nombres ou les booléens soient correctement typés, vous devrez post-traiter le JSON, par exemple avec un petit script qui parcourt le tableau et convertit des champs spécifiques.
Puis-je reconvertir du JSON en CSV ?
Oui. L'outil fonctionne dans les deux sens. Pour la conversion de JSON vers CSV, la valeur JSON de premier niveau doit être un tableau d'objets aux clés cohérentes. Les clés du premier objet deviennent la ligne d'en-tête du CSV. Les objets et tableaux imbriqués sont sérialisés sous forme de chaînes JSON dans la cellule CSV correspondante.
Y a-t-il une limite de taille de fichier ?
Il n'y a pas de limite imposée ; la conversion n'est bornée que par la mémoire disponible de votre navigateur. Les fichiers allant jusqu'à environ 50 Mo se traitent généralement en quelques secondes. Les très gros fichiers (100 Mo ou plus) peuvent rendre l'onglet du navigateur lent ou ne plus répondre. Pour le traitement en masse de gros fichiers, des outils en ligne de commande comme jq, csvkit ou Miller sont plus adaptés.
Pourquoi Excel utilise-t-il des points-virgules au lieu de virgules dans les fichiers CSV ?
Dans les paramètres régionaux où la virgule sert de séparateur décimal (la majeure partie de l'Europe continentale), Excel utilise le point-virgule comme séparateur de liste pour éviter toute ambiguïté. Un nombre comme 1,234 serait sinon interprété comme deux champs distincts. Si vous ouvrez un fichier exporté depuis une installation d'Excel réglée sur des paramètres régionaux européens, changez le délimiteur en point-virgule dans cet outil.
Quand utiliser JSON plutôt que CSV ?
JSON est le meilleur choix lorsque vos données ont une structure hiérarchique ou imbriquée, lorsque vous devez préserver les types de données (nombres, booléens, valeurs nulles) ou lorsque la sortie sera consommée directement par une application JavaScript ou une API REST. CSV est préférable lorsque les données sont purement tabulaires, lorsque la taille du fichier est critique, ou lorsque le destinataire ouvrira le fichier dans un tableur.
Comment gérer les fichiers CSV avec des problèmes d'encodage ?
Les fichiers CSV ne transportent pas de métadonnées d'encodage, de sorte qu'un fichier enregistré en Windows-1252 (un encodage courant des anciennes applications Windows) peut afficher des caractères illisibles lorsqu'il est ouvert en UTF-8. Si vous voyez des symboles étranges, essayez d'ouvrir le fichier dans un éditeur de texte, de l'enregistrer explicitement en UTF-8, puis de coller le contenu dans cet outil. Les exportations modernes d'Excel et de Google Sheets utilisent UTF-8 par défaut, avec ou sans BOM (marque d'ordre des octets).

À propos de Convertisseur CSV ↔ JSON

JSON est apparu au début des années 2000, normalisé par Douglas Crockford, et est rapidement devenu le format dominant pour les API web parce qu'il correspond naturellement aux objets et aux tableaux que comprend tout langage de programmation. Lorsqu'un développeur récupère des données depuis une API REST, elles arrivent presque toujours au format JSON. Lorsqu'un analyste de données exporte une table depuis Excel ou PostgreSQL, elle sort presque toujours au format CSV. Convertir entre les deux est par conséquent l'une des tâches de préparation des données les plus courantes dans le développement logiciel, l'ingénierie des données et l'informatique décisionnelle. Parmi les scénarios courants du monde réel : charger une exportation CSV d'un CRM dans une application JavaScript, aplatir une réponse JSON d'une API dans un tableur pour examen, ou préparer des données en vue d'un import dans un outil qui n'accepte que l'un des deux formats.

Ce convertisseur fonctionne entièrement dans votre navigateur, aucune donnée n'est envoyée à un serveur. Vous pouvez coller du texte directement ou charger un fichier, choisir le sens de la conversion (CSV vers JSON ou JSON vers CSV), configurer le caractère délimiteur et indiquer si la première ligne doit être traitée comme un en-tête. La sortie JSON est mise en forme pour la lisibilité. Les cas limites tels que les champs contenant le caractère délimiteur, les sauts de ligne intégrés dans des champs entre guillemets et les échappements de guillemets doublés sont tous traités selon les règles du RFC 4180.

Quelques pièges pratiques à connaître : CSV n'a pas de notion native de types de données, de sorte que les nombres, les dates et les booléens arrivent tous sous forme de chaînes dans le JSON analysé ; il se peut que vous deviez post-traiter la sortie pour convertir les champs vers les bons types. Les fichiers exportés depuis Excel dans des paramètres régionaux européens utilisent souvent le point-virgule comme délimiteur au lieu de la virgule ; changez le réglage du délimiteur si vos colonnes ne se séparent pas correctement. Les fichiers volumineux de plus de 50 Mo peuvent être traités lentement dans le navigateur ; pour ceux-là, un outil en ligne de commande comme jq ou csvkit sera plus rapide. Lors de la conversion de JSON vers CSV, les objets et tableaux imbriqués sont aplatis ou sérialisés sous forme de chaînes, de sorte que les structures profondément imbriquées peuvent nécessiter un nettoyage manuel.

Des cartes perforées aux API REST : les improbables vies parallèles de CSV et JSON

Le format de valeurs séparées par des virgules est l'un des plus anciens formats d'échange de données encore en usage en informatique. Les programmes sur ordinateur central d'IBM échangeaient déjà des données dans des fichiers texte délimités par des virgules dès les années 1960, précédant l'ordinateur personnel de plus d'une décennie. Le format était si élémentaire, un enregistrement par ligne, des champs séparés par un caractère connu, qu'il n'avait besoin d'aucune documentation formelle ; tout le monde se mettait simplement d'accord par convention. Lorsque les premiers tableurs sont apparus à la fin des années 1970 (VisiCalc en 1979, Lotus 1-2-3 en 1983), CSV est devenu le pont naturel entre eux et les bases de données et programmes qui les entouraient. Il a survécu à la transition des ordinateurs centraux aux mini-ordinateurs, aux PC, puis au web, presque inchangé, ce qui explique qu'un fichier CSV produit par un programme COBOL en 1985 puisse encore être ouvert aujourd'hui dans Microsoft Excel.

JSON a une histoire bien plus courte mais tout aussi intéressante. Douglas Crockford, le créateur du format, a déclaré qu'il avait "découvert" JSON plutôt que de l'inventer ; la syntaxe était déjà présente dans JavaScript comme manière d'écrire des littéraux d'objet, et Crockford l'a simplement identifiée comme un format de données autonome et utile vers 2001. Le premier analyseur JSON tenait en une trentaine de lignes de code. Dès 2006, JSON avait été formalisé sous la norme ECMA-404 et supplantait rapidement XML dans les API web, car il était plus léger, plus facile à lire et correspondait directement aux structures de données natives de tous les grands langages de programmation. Aujourd'hui, JSON est si omniprésent qu'il sert pour les fichiers de configuration (package.json, tsconfig.json), le stockage en base de données (le type jsonb de PostgreSQL, le modèle de documents de MongoDB), les formats de journaux et d'innombrables autres usages que son créateur n'avait jamais anticipés.

La tension entre CSV et JSON reflète une tension plus large dans l'ingénierie logicielle entre simplicité et expressivité. CSV l'emporte sur la simplicité : n'importe qui peut lire et modifier un fichier CSV dans un éditeur de texte ou un tableur sans rien connaître à la programmation. JSON l'emporte sur l'expressivité : il peut représenter des structures imbriquées, des valeurs typées et des schémas mixtes que CSV ne peut pas exprimer. Une enquête de 2023 auprès d'ingénieurs de données a révélé que CSV et JSON représentent ensemble plus de 70 % de tous les échanges de fichiers de données entre organisations, une statistique remarquable pour deux formats dont les conceptions fondamentales ont des décennies, dans un domaine qui se réinvente tous les quelques années.

Soutenir