Convertisseur JSON vers CSV : des données imbriquées aux lignes structurées, dans les deux sens
Collez du JSON pour obtenir du CSV, ou du CSV pour obtenir du JSON. L’IA gère les objets imbriqués, les tableaux, les champs incohérents et les données mal formées. Gratuit, sans compte.
Vous convertissez de gros exports d’API ?
Pro augmente la limite de saisie pour convertir en une seule fois les données à plusieurs niveaux d’imbrication et les longs ensembles d’enregistrements.
Aide au code illimitée - Gratuite pendant 7 jours
Générations illimitées, modèles d'IA premium, contexte étendu et historique enregistré. Aucun débit aujourd'hui, résiliez à tout moment.
- Utilisation illimitée
- Modèles premium
- Sans publicité
- Essai gratuit de 7 jours
- Résiliable à tout moment
JSON vers CSV et CSV vers JSON - Conversion bidirectionnelle
La conversion de données est une tâche courante, mais étonnamment pénible. Les objets JSON imbriqués ne se transposent pas facilement en lignes CSV plates. Les champs manquants dans certains enregistrements entraînent un nombre de colonnes incohérent. Les règles CSV concernant les guillemets dans les champs contenant des virgules ou des sauts de ligne mettent en difficulté les convertisseurs basiques. L’IA gère correctement tous ces cas et explique ses choix pour que vous puissiez ajuster le résultat si nécessaire.
Le JSON imbriqué est aplati avec une notation pointée - address.city devient un en-tête de colonne. Les règles de mise entre guillemets de RFC 4180 sont correctement appliquées aux champs contenant des virgules ou des sauts de ligne. Pour interroger les données une fois chargées dans une base de données, notre Générateur SQL à partir de texte rédige les requêtes. Pour les erreurs d’analyse JSON avant conversion, notre Explication des messages d'erreur diagnostique le problème. Pour jq et les commandes csvkit en ligne de commande, consultez notre Générateur de commandes Bash.
Sens de conversion
Des structures JSON au CSV : les cinq règles
JSON est un arbre ; CSV est une grille. Tous les convertisseurs, y compris celui-ci, doivent prendre les mêmes cinq décisions structurelles pour passer de l’un à l’autre. Les connaître vous permet de prévoir le résultat avant la conversion.
| Situation | Comment la conversion s’effectue |
|---|---|
| Objets imbriqués | Aplati avec la notation pointée : {"address": {"city": "Oslo"}} devient une colonne nommée address.city maintien Oslo. |
| Tableaux de valeurs primitives | Regroupés dans une seule cellule avec un délimiteur : "tags": ["a","b"] devient a; b. Le nombre de lignes est conservé. |
| Tableaux d’objets | Soit les données sont réparties sur une ligne par élément du tableau (avec répétition des champs parents), soit elles sont sérialisées sous forme de chaîne JSON dans une seule cellule. La première option modifie le nombre de lignes : précisez donc celle que vous souhaitez. |
| Valeurs null et chaînes vides | Le format CSV ne peut pas les distinguer : les deux sont sérialisés en cellule vide. Lors de la reconversion en JSON, les cellules vides deviennent null par défaut. Si cette différence compte pour les traitements ultérieurs, conservez les données en JSON. |
| Types mixtes dans une colonne | Un champ qui contient un nombre dans un enregistrement et une chaîne de caractères dans un autre force toute la colonne CSV au format texte. Les tableurs ne pourront plus en calculer la somme tant que les valeurs n’auront pas été harmonisées. |
L’ordre des en-têtes suit celui des clés du premier enregistrement ; les clés qui n’apparaissent que dans les enregistrements suivants sont ajoutées à la fin. Si vous avez besoin d’un ordre de colonnes fixe pour un outil d’importation, indiquez les en-têtes souhaités dans votre demande et le convertisseur respectera cet ordre.
Avant et après : du JSON imbriqué au CSV à plat
Voici un petit exemple concret montrant toutes les règles ci-dessus à l’œuvre en même temps : aplatissement en notation pointée, regroupement des éléments des tableaux et conversion des champs manquants en cellules vides.
// Input JSON
[
{"id": 1, "name": "Alice", "address": {"city": "London", "zip": "E1 6AN"}, "tags": ["vip", "beta"]},
{"id": 2, "name": "Bob", "address": {"city": "Paris"}, "tags": []}
]
// Output CSV
id,name,address.city,address.zip,tags
1,Alice,London,E1 6AN,"vip; beta"
2,Bob,Paris,,
Remarquez l’absence de Bob address.zip devient une cellule vide et son tableau de tags vide reste vierge, tandis que les tags d’Alice sont joints et placés entre guillemets, car la valeur obtenue contient l’espace qui accompagne le séparateur.
Scénarios de conversion courants
Les tâches de conversion de données les plus courantes auxquelles les développeurs et les analystes font face au quotidien.
Convertissez le JSON d’une réponse d’API REST en fichier CSV à ouvrir dans Excel ou Google Sheets pour l’analyse ou la création de rapports.
Convertissez un export CSV de tableur en fichier de configuration JSON ou en données initiales pour votre application.
Exportez les données d’un système en JSON, puis convertissez-les en CSV pour les importer dans un autre système exigeant un format différent.
Convertissez un petit fichier CSV de cas de test en tableau JSON à utiliser dans tests unitaires, ou générez des jeux de données de test CSV à partir d'un schéma JSON.