CSV et JSON
Convertissez CSV vers JSON ou JSON vers CSV dans votre navigateur, avec les en-têtes mappés en clés d'objet et une sortie copiable.
Ce que fait l'outil
- CSV vers JSON avec les en-têtes comme clés
- JSON vers CSV avec toutes les clés rencontrées en colonnes
- Avec en-têtes : objets. Sans en-têtes : tableaux
- Guillemets, virgules et retours à la ligne dans les champs gérés
- Traitement local, aucune donnée envoyée
Ce convertisseur fonctionne dans les deux sens sur un seul écran : collez du CSV dans le panneau de gauche et cliquez sur CSV vers JSON, ou collez un tableau JSON dans le panneau de droite et cliquez sur JSON vers CSV. Chaque panneau sert à la fois d'entrée et de sortie, ce qui permet de convertir, retoucher puis reconvertir sans changer de page. L'analyse est confiée aux bibliothèques Rust csv et serde_json compilées en WebAssembly : un export de fichier clients est traité dans l'onglet, sans jamais être téléversé.
Besoin d'un seul sens ? Les pages dédiées verrouillent l'outil sur une direction : convertisseur CSV vers JSON et convertisseur JSON vers CSV.
Comment convertir un CSV en JSON
- Collez des données séparées par des virgules dans le panneau CSV : export Excel, Google Sheets, client de base de données.
- Laissez Avec en-têtes coché si la première ligne contient les noms de colonnes. Décochez-le si le fichier commence directement par des données.
- Cliquez sur CSV vers JSON. Le panneau JSON se remplit d'un tableau indenté, à copier en un clic.
Avec en-têtes, chaque ligne devient un objet dont les clés sont les noms de colonnes : nom,age suivi de Alice,30 donne [{"age": "30", "nom": "Alice"}]. Sans en-têtes, chaque ligne devient un tableau de valeurs : [["Alice", "30"]]. Les clés de chaque objet sont écrites par ordre alphabétique.
Comment convertir un JSON en CSV
Le JSON doit être un tableau d'objets, par exemple [{"id": 1, "email": "a@exemple.fr"}, {"id": 2, "role": "admin"}]. L'outil rassemble toutes les clés présentes dans n'importe quel objet, pas seulement dans le premier, et en fait la ligne d'en-tête. Un enregistrement auquel il manque une clé reçoit simplement une cellule vide : aucune colonne ne disparaît parce que le premier objet était incomplet. Les colonnes sont triées par ordre alphabétique.
- Chaînes : écrites telles quelles, et mises entre guillemets automatiquement si elles contiennent une virgule, un guillemet ou un retour à la ligne.
- Nombres et booléens : écrits sous forme de texte,
1outrue. - null : écrit littéralement
null. - Objets et tableaux imbriqués : écrits en JSON compact dans la cellule, par exemple
[1,2]. Aplatissez la structure avant conversion si vous voulez une colonne par sous-champ.
Un objet seul, non entouré de crochets, est refusé avec le message « JSON must be an array of objects ». Entourez-le de crochets pour le convertir en une ligne.
Cas particuliers à connaître
- Séparateur : le parseur attend des virgules. Or Excel en français exporte souvent le « CSV » avec des points-virgules. Un tel fichier est lu comme une seule colonne, ou s'arrête sur une erreur de nombre de champs. Réexportez avec des virgules. Pour un fichier séparé par des tabulations (TSV), passez d'abord par le convertisseur TSV/CSV.
- Champs entre guillemets : une valeur comme
"Dupont, Jean"ou un texte sur plusieurs lignes entre guillemets est correctement interprété, selon les règles CSV standard. - Lignes irrégulières : chaque ligne doit compter autant de champs que la première. Une ligne avec un champ de trop arrête la conversion avec une erreur qui indique le numéro de ligne, pratique pour traquer une virgule parasite.
- BOM : l'indicateur d'ordre des octets qu'Excel ajoute en tête des CSV UTF-8 est supprimé, la première colonne garde donc un nom propre.
- Types : toutes les valeurs CSV deviennent des chaînes JSON,
30reste"30". Le CSV ne porte aucune information de type, et deviner transformerait un code postal comme01000en nombre 1000.
Usages typiques
- Transformer un export de tableur en jeu de données de test ou en fichier d'amorçage pour une application.
- Préparer un payload JSON pour une API d'import en masse.
- Aplatir une réponse d'API en CSV pour qu'un collègue l'ouvre dans Excel ou LibreOffice.
- Comprendre pourquoi un import échoue, grâce à l'erreur qui donne le numéro de ligne fautive.
Par rapport à un tableur ou un script
Excel et LibreOffice Calc ouvrent un CSV mais n'exportent pas de JSON sans macro ou complément. En Python, csv.DictReader et json.dumps règlent la question en quelques lignes, et jq ou Miller le font en ligne de commande. Cette page est la voie la plus rapide pour une conversion ponctuelle sans écrire de code, avec la même confidentialité qu'un script local.
Confidentialité des données tabulaires
Un export CSV, c'est souvent la donnée la plus brute de l'entreprise : listes de clients avec e-mails et téléphones, factures, lignes de paie, extractions de CRM. Le téléverser sur un convertisseur en ligne, c'est créer une copie de données personnelles chez un tiers, ce que le RGPD impose de justifier et d'encadrer. Ici, la conversion s'exécute en WebAssembly dans la page, sans aucune requête contenant vos données. Fermez l'onglet, il n'en reste rien.
Foire aux questions
- Mon fichier CSV est-il envoyé quelque part ?
- Non. Vous collez les données dans la page et la conversion s'effectue localement, dans votre navigateur. Aucune requête réseau ne contient vos données.
- Pourquoi mes nombres sont-ils entre guillemets dans le JSON ?
- Le CSV stocke tout sous forme de texte : le convertisseur garde donc chaque valeur en chaîne plutôt que de deviner. Cela protège les codes postaux, numéros de téléphone et identifiants commençant par zéro.
- Mon CSV utilise des points-virgules, comment faire ?
- Le parseur découpe sur la virgule. Réexportez le fichier avec la virgule comme séparateur, ou remplacez les points-virgules avant de coller (attention aux valeurs qui contiennent elles-mêmes des virgules).
- Que se passe-t-il si mes objets JSON n'ont pas les mêmes clés ?
- Toutes les clés rencontrées deviennent des colonnes. Les valeurs absentes donnent des cellules vides, rien n'est perdu.
- Peut-on convertir un JSON imbriqué en CSV ?
- Oui, mais les objets et tableaux imbriqués finissent sous forme de texte JSON dans une seule cellule. Le CSV est plat : aplatissez la structure d'abord si vous voulez une colonne par champ.
- Que signifie l'erreur « found record with 3 fields » ?
- Une ligne n'a pas le même nombre de champs que l'en-tête. Le plus souvent, c'est une virgule non protégée par des guillemets à l'intérieur d'une valeur. Le message indique la ligne à vérifier.
- Puis-je importer un fichier .csv au lieu de coller ?
- L'outil travaille sur du texte collé. Ouvrez le fichier dans un éditeur de texte et copiez son contenu. Pour parcourir d'abord un gros CSV sous forme de tableau, utilisez la visionneuse CSV.