Skip to main content

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.

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.

  1. [{"name":"Ada","city":"Londres"},{"name":"Dupont, Jean","city":"Paris","role":"dev"}]
  2. union des clĂ©s → name, city, role
  3. ligne 1 → Ada,Londres, (role est vide, pas omis)
  4. 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.