Comment convertir JSON en CSV : examinez d'abord la structure des données
La réponse à la question « comment convertir JSON en CSV » dépend de la structure de vos données : plate ou imbriquée. Un tableau plat peut être directement mappé en tableau, tandis qu'un objet imbriqué doit d'abord être aplati ou développé en plusieurs lignes. Voici le processus complet expliqué selon trois axes : structure des données, étapes opérationnelles et erreurs courantes.
Comprendre ce qu'est la conversion JSON vers CSV est le prérequis pour choisir la bonne méthode. JSON décrit des relations hiérarchiques avec des paires clé-valeur et des tableaux, tandis que CSV n'utilise que des lignes et colonnes séparées par des virgules. Leur expressivité n'est pas équivalente, donc le processus de conversion implique nécessairement des compromis.
Qu'est-ce que la conversion JSON vers CSV
On peut comprendre la conversion JSON vers CSV en deux phrases : JSON est un format texte hiérarchique, CSV est un format tabulaire purement bidimensionnel ; l'essence de la conversion est d'aplatir la hiérarchie en lignes et colonnes. Chaque objet d'un tableau devient généralement une ligne, et les clés de l'objet deviennent les en-têtes.
Il faut noter que lorsqu'un objet contient lui-même des objets ou des tableaux, il existe plusieurs façons de l'aplatir. Vous pouvez concaténer les clés internes en noms de chemin comme user.name, ou développer les tableaux en plusieurs lignes en répétant les champs externes. Le choix dépend des statistiques que vous souhaitez effectuer dans le tableau.
Avant de commencer, déterminez la forme de votre JSON
Ouvrez le fichier et regardez d'abord le symbole le plus externe ; cette étape vous évitera la majorité des retouches ultérieures.
- Le niveau le plus externe est un crochet
[: il contient un tableau d'objets, le cas idéal, directement convertible. - Le niveau le plus externe est une accolade
{: trouvez d'abord la clé qui porte la liste, par exempledata,items,records, et utilisez sa valeur comme objet de conversion. - Les champs contiennent encore de l'imbrication : décidez d'abord si vous concaténez les noms de chemin ou si vous développez les tableaux en plusieurs lignes ; les deux résultats sont totalement différents.
- Les noms de champs ne sont pas uniformes : les clés présentes diffèrent d'un objet à l'autre ; les clés manquantes resteront vides, il faut vérifier à l'avance si c'est conforme à vos attentes.
Une fois cette étape de détermination de la forme effectuée, 90 % des erreurs ultérieures peuvent être évitées à l'avance.
Comment convertir JSON en CSV : étapes détaillées
- Copiez le JSON original dans un éditeur de texte et vérifiez que l'encodage est UTF-8 pour éviter que le chinois ne devienne illisible.
- Trouvez le véritable niveau du tableau ; si le niveau le plus externe est un objet, localisez d'abord la clé contenant la liste.
- Collez le JSON dans le champ de saisie de l'outil de conversion ; l'outil analyse localement dans le navigateur, les données ne sont pas téléchargées.
- Choisissez le séparateur, la virgule par défaut suffit ; si le contenu d'un champ contient lui-même des virgules, utilisez un point-virgule ou entourez de guillemets.
- Choisissez le mode de traitement des champs imbriqués : la concaténation de noms de chemin convient pour conserver l'information complète, le développement en lignes convient pour les statistiques groupées.
- Vérifiez que l'aperçu des en-têtes correspond à vos attentes, en particulier s'il y a des colonnes d'index de tableau comme
0,1en trop. - Exportez le CSV, ouvrez-le avec un tableur et vérifiez que le nombre de colonnes et de lignes correspond à la longueur du tableau original.
Effectuez les étapes ci-dessus dans l'outil de conversion local dans le navigateur, sans aucune soumission de données en ligne.
La conversion JSON vers CSV ne fonctionne pas : causes courantes et dépannage
Si la conversion JSON vers CSV ne fonctionne pas, ce n'est généralement pas l'outil qui est en cause, mais l'entrée qui ne remplit pas les conditions de conversion. Suivez l'ordre ci-dessous pour localiser le problème.
- Erreur de syntaxe : une virgule en trop, un guillemet manquant, des guillemets simples au lieu de doubles, le parseur refusera directement.
- Le niveau le plus externe n'est pas un tableau : beaucoup d'outils n'acceptent que les tableaux d'objets ; face à un objet unique, ils renvoient une erreur ; il faut d'abord l'entourer de crochets.
- Le tableau contient des éléments non-objets : mélange d'objets et de chaînes ou de nombres, les en-têtes ne peuvent pas être uniformisés.
- Écart trop important du nombre de champs : certains objets ont des dizaines de clés, d'autres une seule, les en-têtes deviennent très larges.
- Problème d'encodage : fichier avec BOM ou encodage non UTF-8, le chinois s'affichera en caractères illisibles plutôt qu'en erreur.
Si l'entrée est valide mais échoue toujours, testez les 5 premiers enregistrements séparément pour distinguer rapidement un problème de données d'un problème de volume.
Conversion JSON vers CSV de gros fichiers : gestion du volume et de la mémoire
Les gros fichiers JSON à convertir en CSV bloquent le plus souvent sur la mémoire. La solution navigateur doit lire tout le fichier en mémoire avant de l'analyser ; plus le fichier est gros, plus l'occupation est élevée, et au-delà de plusieurs centaines de Mo, l'onglet peut devenir non réactif.
Trois pistes de traitement : premièrement, découper le fichier source par date ou par champ métier, convertir par lots puis fusionner ; deuxièmement, supprimer les champs inutiles à la conversion pour réduire le volume ; troisièmement, vérifier si l'outil prend en charge le traitement en flux, sinon éviter d'envoyer tout le fichier d'un coup.
Le CSV exporté doit aussi être surveillé en volume. Certains tableurs ont une limite de lignes ; au-delà, les lignes sont tronquées. Estimez le nombre de lignes avant la conversion.
Différence entre conversion JSON vers CSV et conversion de tableur en ligne
La différence entre conversion JSON vers CSV et conversion de tableur en ligne réside principalement dans l'objet traité. La première s'adresse aux développeurs : l'entrée est le texte brut renvoyé par une API, la sortie est un fichier destiné aux programmes ou à l'analyse de données ; la seconde s'adresse au travail bureautique quotidien : entrée et sortie sont des fichiers tableur déjà mis en forme.
Les différences concrètes se manifestent sur trois points : le sens de conversion est-il unidirectionnel ou bidirectionnel, les formules et formats du tableur peuvent-ils être conservés, faut-il comprendre la structure des données. La différence réside aussi dans la stratégie de tolérance aux erreurs : la conversion JSON vers CSV ne tolère aucune erreur de syntaxe, tandis que la conversion de tableur en ligne permet généralement de remplir librement les cellules.
Débogage d'API JSON vers CSV : transformer la réponse en tableau lisible
Le débogage d'API JSON vers CSV est un scénario fréquent. Le corps de réponse d'une API est souvent imbriqué sur plusieurs niveaux ; difficile de vérifier les champs directement. Une fois converti en tableau, on repère d'un coup d'œil quel champ est vide ou quel type est incorrect.
La méthode consiste à copier le corps de réponse dans le champ de saisie de l'outil, en confirmant la clé contenant la liste. Les API paginées placent souvent les données sous un chemin comme data.list ; les colonnes avec des noms de champs comme id, name, created_at doivent être vérifiées en priorité. Lors du débogage d'API JSON vers CSV, si une colonne entière est vide, c'est probablement que le chemin de champ a été choisi au mauvais niveau.
Questions fréquentes
Que faire si un champ contient lui-même des virgules
Entourez le champ entier de guillemets ; la virgule sera alors traitée comme contenu et non comme séparateur. Après export, ouvrez avec un tableur et vérifiez si une colonne a été scindée en deux : c'est la méthode directe pour juger si le traitement est correct.
Que faire si un objet imbriqué se transforme en une longue chaîne
C'est le résultat de l'aplatissement par défaut : les clés internes ont été concaténées en noms de chemin. Si vous ne voulez conserver que certains champs, supprimez les structures imbriquées inutiles avant la conversion ; les en-têtes seront bien plus clairs.
Comment résoudre l'affichage illisible du chinois
Vérifiez d'abord que le fichier source est encodé en UTF-8. Si le fichier source est correct mais que l'export est illisible, vérifiez si le tableur a choisi le bon encodage à l'ouverture, plutôt que d'ouvrir avec l'encodage par défaut.
Après conversion, le nombre de lignes est inférieur à la longueur du tableau
C'est généralement que des objets manquant de champs clés ont été ignorés, ou que l'outil déduplique par défaut. Comparez la longueur du tableau original et le nombre de lignes exportées ; la différence correspond au nombre d'enregistrements perdus.
Peut-on conserver l'ordre original des champs
La plupart des outils génèrent les en-têtes dans l'ordre d'apparition des clés. Si l'ordre ne correspond pas à vos attentes, uniformisez l'ordre des clés dans les données source, ou réorganisez manuellement les colonnes après conversion.
Conclusion
Comment convertir JSON en CSV : le cœur tient en trois étapes : déterminer la forme des données, décider du traitement des champs imbriqués, vérifier que les lignes et colonnes exportées correspondent aux données originales. Testez d'abord le processus sur un petit échantillon, puis traitez le fichier complet ; cela évite la grande majorité des retouches. Pour essayer directement, utilisez /tools/json-to-csv pour effectuer la conversion en local.