Données et développement · Gratuit · Sans inscription
Convertir un tableau JSON en CSV
Transformez un tableau d’objets plats en CSV, choisissez le séparateur et préparez un fichier UTF-8 lisible dans Excel ou un autre système.
Collez un tableau JSON valide. L’outil réunit les clés de tous les objets, échappe séparateurs, guillemets et retours à la ligne, puis produit un tableau délimité. La protection des cellules ressemblant à des formules et le BOM UTF-8 sont activés pour réduire deux erreurs courantes lors d’une ouverture directe dans un tableur. Les objets imbriqués sont refusés afin de ne pas créer une représentation ambiguë.
🔒 Le traitement s’effectue dans ce navigateur ; vos données ne sont pas envoyées à FunnyTools.
Utiliser l’outil
Ce que vous pouvez faire ici
- Accepter un tableau non vide d’objets JSON plats.
- Réunir toutes les clés, y compris celles absentes du premier objet.
- Générer un CSV à virgule, point-virgule, tabulation ou barre verticale.
- Échapper automatiquement séparateurs, guillemets et retours à la ligne.
- Protéger les cellules ressemblant à des formules et ajouter un BOM au téléchargement.
Réponse rapide : transformer un tableau JSON en CSV
Collez un tableau comme `[{"id":"001","nom":"Léa"},{"id":"002","nom":"Yanis"}]`, choisissez le séparateur puis cliquez sur « Convertir en CSV ». La première ligne devient l’en-tête `id,nom` ou `id;nom`, et chaque objet produit une ligne. Le résumé indique le nombre de lignes et de colonnes. Relisez la sortie avant de la télécharger et importez d’abord quelques lignes dans l’application cible.
La racine doit être un tableau d’objets plats. Un objet unique, un tableau de nombres ou un objet contenant une adresse imbriquée est refusé. Cette contrainte évite d’écrire `[object Object]` ou une sérialisation arbitraire dans une cellule. Pour des données hiérarchiques, définissez d’abord une règle d’aplatissement, par exemple `adresse_ville`, et documentez la reconstruction éventuelle.
Colonnes issues de toutes les clés JSON
Tous les objets JSON ne sont pas obligés d’avoir les mêmes propriétés. Un CSV, lui, doit former une table rectangulaire. FunnyTools construit donc l’union des clés selon leur première apparition. Si la première ligne possède `id` et `nom`, puis que la troisième ajoute `pays`, la colonne `pays` est tout de même créée. Les lignes où elle manque reçoivent une cellule vide.
Cette cellule vide ne permet plus de distinguer une propriété absente, `null` et parfois une chaîne vide. De même, le CSV ne conserve pas un type natif pour nombre, booléen ou texte. Le sens doit être rétabli lors de l’import. Avant conversion, choisissez une liste de colonnes attendues, la signification du vide et les formats de date ou de décimale acceptés.
- La racine JSON doit être un tableau.
- Chaque élément doit être un objet plat.
- Les clés de tous les objets participent à l’en-tête.
- Le format CSV ne conserve pas le schéma JSON.
Choisir virgule, point-virgule, tabulation ou barre verticale
La virgule est fréquente dans les échanges techniques, mais Excel configuré en français ouvre souvent plus naturellement un CSV au point-virgule, notamment lorsque les nombres utilisent la virgule décimale. La tabulation convient à un TSV et la barre verticale à certains exports techniques. Le bon choix est celui attendu par l’importateur, pas simplement celui qui paraît lisible dans le navigateur.
Si une valeur contient le séparateur, Papa Parse l’entoure de guillemets doubles. Un guillemet interne est doublé et un retour à la ligne reste dans la cellule citée. Il n’est donc pas nécessaire de supprimer la ponctuation. Testez une valeur comme `Lyon, France`, une citation et un commentaire multiligne, puis ouvrez le fichier via la commande d’import du tableur plutôt que par un double clic si vous devez imposer séparateur et types.
UTF-8, BOM et ouverture dans Excel
Le téléchargement utilise UTF-8 afin de conserver accents, ligatures et caractères non latins. Un BOM UTF-8 est ajouté par défaut. Cette marque invisible aide certaines versions d’Excel à reconnaître l’encodage lors de l’ouverture directe. Elle ne change pas les cellules visibles, mais certains outils en ligne de commande ou protocoles stricts n’en veulent pas. Désactivez-la lorsque le contrat exige un UTF-8 sans BOM.
Le BOM ne choisit ni séparateur, ni format de date, ni type de colonne. Excel peut encore interpréter `03-04` comme une date, `1E10` comme une notation scientifique ou un identifiant long comme un nombre arrondi. Utilisez l’assistant d’import et forcez les colonnes sensibles en texte. Comparez une réouverture avec le JSON d’origine, en particulier pour les zéros initiaux et les nombres dépassant quinze chiffres.
Limiter le risque de formule dans un tableur
Une cellule commençant par `=`, `+`, `-`, `@`, une tabulation ou un retour chariot peut être interprétée comme une formule par certains tableurs. Si ces valeurs viennent d’un formulaire ou d’un tiers, leur ouverture peut déclencher un calcul, un lien ou une fonction inattendue. L’option de protection demande au sérialiseur de préfixer ces valeurs afin qu’elles soient lues comme du texte.
Cette protection modifie la représentation du contenu et n’est donc pas universellement souhaitable. Une API ou un importeur peut vouloir la valeur exacte sans apostrophe de sécurité. Décidez selon le lecteur final, documentez la transformation et conservez les données sources. Ne considérez pas un CSV comme sûr simplement parce qu’il ne contient pas de macro : la manière dont le tableur interprète les cellules compte également.
Objets imbriqués, tableaux et aplatissement
Un objet `{"client":{"ville":"Lille"}}` ou une propriété contenant plusieurs produits n’a pas de conversion tabulaire unique. On pourrait créer `client.ville`, sérialiser le sous-objet en JSON, répéter une ligne par produit ou utiliser une seconde table. Chacune de ces options exprime une règle métier différente. Le widget refuse donc objets et tableaux imbriqués au lieu de choisir silencieusement.
Aplatissez les données en amont avec un mapping testé. Évitez les collisions entre une vraie clé `client.ville` et une clé créée par aplatissement. Pour une relation un-à-plusieurs, préférez souvent deux fichiers reliés par un identifiant stable. Vérifiez que l’opération inverse est définie si le CSV doit ensuite reconstruire le JSON original.
Dates, décimales, booléens et identifiants
Dans le CSV produit, toutes les cellules sont du texte délimité. Le tableur peut néanmoins réinterpréter `2026-07-30`, `12.50`, `true` ou `00123`. En contexte français, l’affichage d’une décimale peut attendre `12,50`, mais remplacer un point par une virgule relève d’une règle de données, pas du séparateur CSV. FunnyTools ne localise pas automatiquement les valeurs.
Définissez pour chaque colonne un format d’échange : date ISO, décimale avec point, booléen `true/false`, identifiant textuel. Si le destinataire exige une virgule décimale, appliquez une transformation explicite avant l’export et testez-la. Pour les montants, évitez les arrondis implicites et conservez la précision attendue. Pour les identifiants, importez toujours comme texte.
Confidentialité, validation et limites du fichier
Le JSON est parsé et le fichier est créé localement dans cet onglet. FunnyTools ne reçoit pas le contenu. Le téléchargement passe toutefois par le système de fichiers et le presse-papiers peut conserver une copie. N’utilisez pas de données de production sur un appareil ou navigateur non approuvé. Préférez un échantillon anonymisé pour tester la forme.
Le convertisseur n’effectue ni validation métier, ni déduplication, ni import réel. Un très grand tableau peut consommer beaucoup de mémoire. Pour un export critique, utilisez une tâche automatisée avec schéma, tests, journal et contrôle d’intégrité. Ici, comparez au minimum nombre de lignes, liste de colonnes, premières et dernières valeurs, caractères accentués, cellules protégées et résultat dans l’application cible.
Mode d’emploi étape par étape
- Validez le JSON et conservez une copie de la source.
- Vérifiez que chaque élément est un objet plat.
- Choisissez le séparateur, le BOM et la protection des formules selon le lecteur final.
- Contrôlez colonnes tardives, cellules vides, accents et identifiants.
- Importez une petite tranche en imposant les types avant le lot complet.
Dans quelles situations cet outil est utile
- Ouvrir un petit catalogue JSON dans Excel avec un CSV au point-virgule.
- Exporter des fixtures de test vers un format tabulaire lisible.
- Préserver les identifiants `001`, `002` comme texte.
- Bloquer une valeur de formulaire qui ressemble à une formule.
- Repérer un objet imbriqué qui exige une règle d’aplatissement.
Exemples détaillés
Colonne présente seulement à la fin
La propriété `pays` apparaît dans le dernier objet. L’union des clés l’ajoute à l’en-tête et les lignes précédentes restent vides dans cette colonne.
Ouverture dans Excel français
Le point-virgule et le BOM sont conservés. L’assistant d’import force les références en texte avant de charger le fichier complet.
Valeur ressemblant à une formule
Un commentaire commence par `=HYPERLINK`. La protection est laissée active pour la revue dans un tableur, puis le choix est documenté pour l’import final.
Relecture éditoriale et test de fonctionnement:
Vérifier une conversion JSON vers CSV
Le fichier doit conserver les colonnes et le texte, puis être importé avec les bons réglages dans l’application cible.
Contrôler les colonnes
Vérifiez les clés tardives, l’ordre de l’en-tête et le sens des cellules vides.
Préparer le tableur
Décidez séparateur, BOM, types de colonnes et protection contre les formules.
Tester un échantillon
Importez accents, guillemets, retours à la ligne et zéros initiaux avant le lot.
Points à contrôler
- Chaque élément du tableau est un objet plat.
- L’en-tête contient toutes les propriétés utiles.
- Le nombre de lignes et de colonnes correspond à la source.
- Les identifiants et textes ne sont pas réinterprétés par le tableur.
Limites et vérifications importantes
- Toutes les clés rencontrées deviennent des colonnes.
- Objets et tableaux imbriqués sont refusés.
- Le BOM UTF-8 est optionnel et activé au téléchargement.
- La protection des formules dépend du lecteur final.
- Le CSV ne conserve ni types JSON ni schéma.
Questions fréquentes
Le convertisseur accepte-t-il un objet JSON unique ?
Non. Entourez les objets destinés à devenir des lignes dans un tableau JSON et vérifiez que chaque élément est plat.
Une propriété absente du premier objet est-elle perdue ?
Non. L’outil réunit les clés de tous les objets pour construire l’en-tête complet.
Quel séparateur choisir pour Excel en français ?
Le point-virgule est fréquent, mais cela dépend des paramètres. Utilisez l’assistant d’import et confirmez le séparateur attendu.
À quoi sert la protection des formules ?
Elle préfixe les valeurs qu’un tableur pourrait interpréter comme formule. Elle modifie le texte, donc décidez selon le système cible.
Pourquoi ajouter un BOM UTF-8 ?
Il aide certaines versions d’Excel à reconnaître les accents en UTF-8. Un parseur technique strict peut au contraire demander de le retirer.
Les objets imbriqués sont-ils convertis ?
Non. Ils sont refusés, car plusieurs stratégies d’aplatissement sont possibles et doivent être définies par votre projet.
Confidentialité et traitement local
Le JSON est converti et le fichier créé dans ce navigateur. FunnyTools ne reçoit ni ne conserve les données.
Utiliser le résultat avec discernement
Le CSV ne garde ni types ni imbrication. Vérifiez formule, BOM, séparateur et format des colonnes dans l’application cible.
Dernière relecture éditoriale: