Convertir entre les formats JSON et CSV.
Tous les calculs sont effectués localement dans votre navigateur. Aucune donnée n'est envoyée au serveur.
Les résultats sont fournis à titre informatif. Vérifiez-les auprès d'autres sources.
Calculé dans votre navigateur. Rien de ce que vous saisissez n'est envoyé.
Convertir entre JSON et CSV
Le JSON s'imbrique, le CSV est plat. La conversion est simple tant que les données forment un tableau d'objets aux mêmes clés, et devient destructrice dès que ce n'est plus le cas. Savoir où se produit la perte constitue l'essentiel du savoir-faire.
Comment ça marche
- JSON → CSV : prend un tableau d'objets, utilise l'union de toutes les clés comme ligne d'en-tête et écrit une ligne par objet.
- CSV → JSON : traite la première ligne comme des en-têtes et produit un tableau d'objets où chaque valeur est une chaîne, sauf si vous demandez l'inférence de types.
- Met entre guillemets tout champ contenant une virgule, un guillemet ou un saut de ligne, et double les guillemets internes, conformément à la RFC 4180.
règles de guillemets CSV (RFC 4180) contient , " ou saut de ligne → entourer le champ de guillemets contient " → le doubler : " devient "" Dupont, Jean → "Dupont, Jean" tube 5" → "tube 5"""
Exemple chiffré
Deux enregistrements dont le second possède un champ absent du premier, et une valeur contenant une virgule.
- [{"name":"Ada","city":"Londres"},{"name":"Dupont, Jean","city":"Paris","role":"dev"}]
- union des clés → name, city, role
- ligne 1 → Ada,Londres, (role est vide, pas omis)
- ligne 2 → "Dupont, Jean",Paris,dev
L'en-tête porte les trois colonnes et le role manquant devient une cellule vide. La virgule dans "Dupont, Jean" impose les guillemets : sans eux, la ligne gagnerait silencieusement une colonne.
Lire le résultat
- Les objets et tableaux imbriqués n'ont pas d'équivalent CSV. On les aplatit en colonnes pointées (address.city) ou on les sérialise en chaîne JSON dans une cellule. Tranchez avant de convertir : l'aller-retour n'est pas automatique.
- Le CSV n'a pas de types. Tout revient en chaîne, et un zéro initial dans un code postal ou une référence produit sera détruit par un tableur qui juge la colonne numérique.
- Excel attend une marque d'ordre d'octets UTF-8 pour afficher correctement les accents. Sans elle, les noms français, polonais ou espagnols arrivent déformés.
- Les fins de ligne diffèrent : la RFC 4180 impose CRLF, les outils Unix produisent LF. La plupart des analyseurs acceptent les deux, certains non.
Questions fréquentes
- Pourquoi mes zéros initiaux ont-ils disparu ?
- C'est le tableur, pas le convertisseur. Excel et Sheets infèrent les types à l'ouverture et lisent 00123 comme le nombre 123. Importez explicitement la colonne en texte, ou préfixez les valeurs d'une apostrophe.
- Comment sont traités les champs imbriqués ?
- Cet outil aplatit un niveau en en-têtes pointés et sérialise tout ce qui est plus profond en texte JSON dans la cellule. Si vos données sont très imbriquées, le CSV est le mauvais format de destination : la conversion réussira techniquement et sera inexploitable.