Toolphy

Convertisseur CSV vers JSON

Collez un CSV avec une ligne d’en-tête et obtenez un tableau JSON d’objets propre — séparateur détecté automatiquement et guillemets correctement gérés.

0
Lignes
0
Colonnes

Comment convertir du CSV en JSON

Transférer des données tabulaires vers une application suppose souvent de convertir un export de tableur en JSON. Cet outil lit votre CSV dans le navigateur et construit un tableau JSON d’objets en quelques secondes.

  1. Collez votre CSV. Copiez le contenu d’un tableur ou d’un fichier .csv — ligne d’en-tête comprise — et collez-le dans la zone de saisie. Chaque ligne suivante devient un objet JSON et chaque en-tête devient une clé de l’objet.

    Exemple : un fichier contenant l’en-tête nom,age puis les lignes Ada,36 et Linus,54 donne [{"nom":"Ada","age":"36"},{"nom":"Linus","age":"54"}].

  2. Choisissez le séparateur. Laissez la détection automatique : l’outil analyse la première ligne pour trancher entre la virgule, le point-virgule et la tabulation. Forcez-le manuellement lorsqu’un fichier mélange les conventions ou que l’en-tête contient lui-même des séparateurs.

  3. Choisissez la forme de sortie. L’indentation rend le JSON lisible dans un éditeur et dans un diff ; désactivez-la pour obtenir la charge la plus compacte possible.

  4. Cliquez sur Convertir, puis copiez ou téléchargez. L’outil affiche le nombre de lignes et de colonnes et vous laisse copier le JSON dans le presse-papiers ou enregistrer un fichier .json en un clic.

Qu’est-ce que la conversion CSV vers JSON ?

CSV (valeurs séparées par des virgules) est un format plat, organisé en lignes, où chaque ligne est un enregistrement et chaque champ est séparé par un délimiteur. JSON (JavaScript Object Notation) est un format hiérarchique composé d’objets, de tableaux et de valeurs typées. Convertir du CSV en JSON relève donc de l’élévation plutôt que de l’aplatissement : les colonnes nommées dans l’en-tête deviennent les clés de chaque objet. La ligne d’en-tête est ce qui donne du sens au résultat. Sans elle, un analyseur ne peut produire que des tableaux de valeurs, difficiles à exploiter dans du code applicatif. Cet outil considère toujours la première ligne comme l’en-tête : une colonne de tableur nommée email devient ainsi une propriété email prévisible sur chaque objet. Le vrai CSV est plus subtil qu’un simple découpage sur les virgules. Les champs peuvent être entourés de guillemets doubles afin de contenir le séparateur, un saut de ligne ou un guillemet ; un guillemet littéral dans un champ entre guillemets s’écrit deux fois, sous la forme "". L’analyseur respecte ici la convention RFC 4180 : un champ comme "Paris, France" reste dans une seule cellule au lieu d’être scindé en deux. Toute l’analyse s’exécute localement en JavaScript natif. Vos données ne sont jamais téléversées vers un serveur, ce qui compte lorsque le CSV contient des informations personnelles ou commercialement sensibles.

Applications courantes

1. Alimenter une base de données : transformez un tableur de produits, d’utilisateurs ou d’articles en JSON insérable directement via une API ou un script d’import.

2. Données de test côté front-end : convertissez une petite liste CSV en jeu de données JSON pour des tests, des stories Storybook ou un prototype, sans écrire les objets à la main.

3. Charges utiles d’API : remettez en forme une table exportée d’un back-office selon le tableau d’objets attendu par la plupart des points de terminaison REST.

4. Pipelines d’analyse : chargez un CSV dans un projet JavaScript ou Node.js sous forme d’enregistrements structurés plutôt que de réanalyser du texte à chaque exécution.

5. Fichiers de configuration : gardez un tableur lisible comme source de vérité, puis régénérez un fichier de configuration JSON à chaque modification.

Gestion des champs entre guillemets et des sauts de ligne

La difficulté du CSV vient de ce que la virgule et le saut de ligne sont à la fois significatifs et autorisés à l’intérieur d’une valeur. La RFC 4180 résout cela avec les guillemets doubles : tout champ contenant le séparateur, un guillemet double ou un saut de ligne est encadré de guillemets, et un guillemet interne est échappé en le doublant.

Prenons un champ écrit "Smith, John". Un découpage naïf sur la virgule produirait deux colonnes, mais cet outil reconnaît le guillemet ouvrant, conserve la virgule à l’intérieur du champ et renvoie la chaîne unique Smith, John. Une valeur contenant un guillemet, comme Il a dit ""bonjour"", est décodée en Il a dit "bonjour", et un champ entre guillemets peut même s’étendre sur plusieurs lignes physiques, ce qui est fréquent dans les adresses ou les commentaires exportés.

Comme l’analyseur suit l’état des guillemets caractère par caractère, les sauts de ligne internes ne démarrent jamais un nouvel enregistrement. Si un champ entre guillemets reste ouvert à la fin du fichier, l’entrée est incorrecte et l’outil le signale au lieu de renvoyer des données cassées. Les champs vides deviennent des chaînes vides : une ligne terminée par une virgule produit donc bien la clé attendue avec une valeur vide.

Le résultat est une conversion fidèle et sans perte : le JSON conserve exactement les caractères présents dans le CSV, sans les artefacts de guillemets qu’un simple découpage laisserait.

Utilitaires Connexes

Questions Fréquentes - FAQ

Mes données sont-elles envoyées à un serveur ?

Non. Toute la conversion s’exécute localement dans votre navigateur avec du JavaScript natif. Votre CSV n’est jamais téléversé, journalisé ni stocké.

Comment fonctionne la détection automatique du séparateur ?

L’outil analyse la première ligne — en ignorant les séparateurs situés à l’intérieur de champs entre guillemets — et compte les occurrences de la virgule, du point-virgule et de la tabulation. Le caractère le plus fréquent est retenu, et vous pouvez toujours le forcer manuellement.

Le CSV doit-il comporter une ligne d’en-tête ?

Oui. La première ligne est toujours traitée comme l’en-tête et ses valeurs deviennent les noms de propriétés de chaque objet JSON. Si l’en-tête est absent ou vide, l’outil vous demande d’en fournir un pour que le résultat reste exploitable.

Comment sont gérés les champs entre guillemets contenant des virgules ou des sauts de ligne ?

Les champs encadrés de guillemets doubles suivent la RFC 4180 : les séparateurs et sauts de ligne internes sont conservés dans la valeur, et un guillemet doublé est décodé en un guillemet simple. Un guillemet non fermé est signalé comme entrée incorrecte.

Puis-je obtenir un JSON compact ou indenté ?

Les deux. L’indentation ajoute deux espaces pour la lisibilité, tandis que sa désactivation produit la charge la plus compacte possible pour les API, le stockage ou le transfert réseau.

Dernière mise à jour: