Convertir un CSV en JSON (et un JSON en CSV)
Convertir un CSV en JSON (ou un JSON en CSV) : collez un tableau ou du JSON, choisissez le sens, copiez le résultat ou téléchargez-le. L’outil détecte seul le séparateur (virgule, point-virgule, tabulation ou barre verticale), transforme les nombres en vrais nombres et signale les erreurs avec le numéro de ligne. Vos données ne quittent jamais le navigateur.
Source : § 2, IETF RFC 4180 – Common Format and MIME Type for Comma-Separated Values (CSV) Files. Mise à jour : .
Comment le calcul est fait
Le CSV (valeurs séparées par des virgules) est le format de tableau le plus simple : une ligne par enregistrement, des champs séparés par un séparateur. Le JSON est le format de données des API web. Cet outil convertit dans les deux sens, entièrement dans votre navigateur.
Convertir un CSV en JSON : mode d’emploi
- Collez le texte CSV (depuis un tableur : copiez les cellules puis collez, le séparateur est alors une tabulation).
- Laissez le sens « CSV → JSON ». Le séparateur est détecté ; choisissez-le vous-même si besoin.
- Choisissez la forme : tableau d’objets (chaque ligne devient
{"colonne": valeur}) ou tableau de tableaux. - Copiez le résultat ou téléchargez
daten.json.
Types : nombre ou texte ?
Le CSV ne connaît pas les types : tout est du texte. Avec « Reconnaître nombres et true/false », les valeurs deviennent des nombres JSON, mais seulement sans perte : le nombre doit être valide selon la RFC 8259 § 6 (pas de zéro initial, pas de signe plus, pas de virgule décimale) et tenir en 15 chiffres significatifs. Les codes postaux comme 01000, les numéros de téléphone et de carte restent du texte. Un nombre français comme 1,5 reste aussi du texte.
Convertir un JSON en CSV
Un tableau d’objets devient un tableau : les colonnes sont l’union de toutes les clés dans l’ordre de première apparition, les valeurs manquantes restent vides. Les objets et tableaux imbriqués sont écrits comme texte JSON dans la cellule, car le CSV n’a pas de profondeur. Les champs contenant le séparateur, un guillemet ou un saut de ligne sont mis entre guillemets comme l’exige la RFC 4180.
Limites
- Les entrées très volumineuses (plus de 5 millions de caractères) sont refusées pour ne pas figer le navigateur.
- Excel n’affiche correctement les accents d’un CSV UTF-8 que si le fichier commence par une marque d’ordre des octets (BOM) : le téléchargement en contient une.
- Les formules dans les cellules (
=SOMME(…)) sont un risque de sécurité dans les tableurs ; la « protection contre les formules » les neutralise à l’export.
Questions fréquentes
Comment convertir un CSV en JSON ?
Collez le CSV dans le champ d’entrée et choisissez « CSV → JSON ». La première ligne fournit les clés, chaque ligne suivante devient un objet. Copiez ou téléchargez le résultat.
Pourquoi mon CSV utilise-t-il des points-virgules ?
En version française, les tableurs utilisent la virgule comme séparateur décimal et écrivent donc le point-virgule comme séparateur de liste. L’outil reconnaît les deux ; en cas de doute, choisissez le séparateur à la main.
Les zéros initiaux (code postal 01000) sont-ils conservés ?
Oui. Les valeurs avec zéro initial restent du texte, car un nombre JSON ne peut pas en avoir (RFC 8259). Pour tout garder en texte, désactivez « Reconnaître nombres et true/false ».
Que devient un JSON imbriqué converti en CSV ?
Le CSV est plat : les objets et tableaux d’un enregistrement sont écrits comme texte JSON dans la cellule. Aplatissez d’abord la structure si vous voulez un tableau simple.
Comment convertir un CSV en JSON avec Python ?
Avec la bibliothèque standard : csv.DictReader(fichier) lit les lignes sous forme de dictionnaires et json.dumps(list(reader), ensure_ascii=False, indent=2) les écrit en JSON. Pour une conversion ponctuelle, cette page est plus rapide.
Mes données sont-elles envoyées quelque part ?
Non. La conversion se fait dans le navigateur, sans requête au serveur. L’entrée n’est ni enregistrée ni ajoutée à l’adresse de la page.
Sources et références juridiques
- § 2: IETF RFC 4180 – Common Format and MIME Type for Comma-Separated Values (CSV) Files
- STD 90, §§ 2, 6: IETF RFC 8259 – The JavaScript Object Notation (JSON) Data Interchange Format
- OWASP – CSV Injection
Dernière mise à jour :
Outils similaires
- Formater, valider et minifier du JSONValidez votre JSON selon la RFC 8259 : erreur avec ligne, colonne et explication claire. Indentez ou minifiez, triez les clés. En local dans le navigateur.
- Validateur XML et CSV en ligneVérifiez qu’un XML est bien formé et qu’un CSV respecte la RFC 4180 : erreurs avec ligne et colonne, séparateur détecté, aperçu du tableau. En local.
- YAML vers JSON : convertisseur (et JSON vers YAML)YAML vers JSON et JSON vers YAML selon YAML 1.2 : listes, ancres, blocs de texte, commentaires. Les erreurs indiquent la ligne. Dans le navigateur, sans envoi.
- Encoder et décoder en Base64Encodez et décodez Base64 et Base64url en UTF-8 correct, ainsi que l’encodage URL (pourcent-encodage). Erreurs expliquées, tout en local.
- Comparer deux textes : trouver les différencesComparez deux textes en ligne : différences surlignées par ligne, mot ou caractère, avec un taux de similarité. Gratuit, sans envoi, dans le navigateur.
- Algorithme de Luhn : vérifier et calculer une cléVérifiez un numéro avec l’algorithme de Luhn (modulo 10, ISO/IEC 7812-1) ou calculez sa clé – simple contrôle de format, en local dans le navigateur.