Convertisseur JSON vers CSV
Le Convertisseur JSON vers CSV transforme un objet JSON, ou un tableau d'objets JSON, en CSV entièrement dans votre navigateur.
Collez un objet JSON ou un tableau d'objets, choisissez les options, puis convertissez. Les objets imbriqués sont aplatis en notation point ; les tableaux imbriqués sont gardés en texte JSON.
Convertit des objets JSON en CSV localement dans votre navigateur. Les nombres JSON suivent la sémantique des nombres JavaScript : de très grands entiers peuvent perdre en précision. La protection des formules réduit le risque que certains tableurs interprètent une cellule comme une formule ; elle n'empêche pas tous les problèmes CSV. Différent de l'outil CSV vers JSON, qui va dans l'autre sens.
Comment l'utiliser
- Collez un objet JSON ou un tableau d'objets dans le champ de saisie
- Choisissez le séparateur (virgule, point-virgule, tabulation) et la fin de ligne (CRLF ou LF)
- Au besoin, désactivez la ligne d'en-tête, gardez la protection des formules, ou ajoutez un BOM UTF-8 pour le téléchargement
- Cliquez sur Convertir en CSV, puis copiez le résultat ou téléchargez converted.csv
Collez votre JSON, cliquez sur Convertir en CSV, et obtenez un aperçu ainsi que des boutons pour copier ou télécharger le résultat sous converted.csv. Les objets imbriqués sont aplatis en colonnes en notation point : un objet user contenant une adresse devient des colonnes comme user.address.city. Les tableaux imbriqués ne sont pas éclatés en lignes supplémentaires ; ils sont conservés en texte JSON dans une seule cellule. Si une clé aplatie entrait en collision avec une clé pointée déjà présente dans les données, l'outil s'arrête avec un message clair au lieu d'écraser silencieusement. Les en-têtes de colonnes sont l'union des clés de chaque objet, dans l'ordre de première apparition — jamais trié alphabétiquement — et les clés absentes deviennent des cellules vides. Les valeurs sont écrites telles quelles : null devient une cellule vide, les booléens deviennent true ou false, les nombres gardent leur forme JSON sans mise en forme locale, et les chaînes sont mises entre guillemets selon la RFC 4180 dès qu'elles contiennent le séparateur, un guillemet double ou un saut de ligne, les guillemets internes étant doublés. Vous choisissez le séparateur (virgule, point-virgule ou tabulation), la fin de ligne (CRLF comme le recommande la RFC 4180, ou LF), l'inclusion d'une ligne d'en-tête, et l'ajout d'un BOM UTF-8 au fichier téléchargé pour les tableurs anciens. Une option de protection des formules, active par défaut, préfixe une apostrophe aux cellules de type chaîne commençant par =, +, - ou @, ce qui réduit le risque qu'un tableur interprète la cellule comme une formule ; ce n'est pas une garantie contre tous les problèmes CSV et cela ne touche jamais les nombres natifs. Les nombres JSON sont analysés selon la sémantique des nombres JavaScript : de très grands entiers peuvent perdre en précision. Tout s'exécute localement : le JSON, le CSV, vos options et les statistiques ne sont jamais envoyés, journalisés ni stockés. C'est le sens inverse de l'outil CSV vers JSON, qui transforme un CSV tabulaire en objets JSON.
FAQ
Un objet JSON unique devient une ligne de données ; un tableau non vide d'objets devient une ligne par objet. Les tableaux de primitives, une primitive seule et les racines vides ne sont pas pris en charge, car un CSV est un tableau.
Ils sont aplatis en colonnes distinctes en notation point : user.name, user.address.city, et ainsi de suite. Les tableaux imbriqués ne sont pas aplatis ; chaque valeur de tableau est écrite en texte JSON dans une seule cellule.
La RFC 4180 impose de mettre entre guillemets tout champ contenant le séparateur, un guillemet double ou un saut de ligne. Les guillemets doubles internes sont doublés. Les champs simples sont laissés exactement tels quels.
Certains tableurs interprètent une cellule commençant par =, +, - ou @ comme une formule. Quand l'option est active, l'outil préfixe une apostrophe à ces cellules de type chaîne. Cela réduit le risque mais n'est pas une protection complète, et ne change jamais les nombres natifs.
Non. La conversion s'exécute entièrement dans votre navigateur avec JSON.parse et un traitement en mémoire. Le JSON, le CSV, vos options et les statistiques ne sont jamais envoyés à un serveur, écrits dans un stockage ni journalisés.