Convertir un fichier CSV en JSON

Fonctionne sur votre appareil · Votre fichier ne quitte jamais votre appareil.

Déposez un export .csv ou collez le texte et obtenez une liste JSON – un objet par ligne, avec la ligne d’en-tête comme clés. L’analyseur suit la RFC 4180 : les champs entre guillemets, les guillemets doublés, et les virgules ou retours à la ligne à l’intérieur d’une cellule sont tous conservés.

Le séparateur de colonnes est détecté automatiquement entre virgule, point-virgule, tabulation et barre verticale – les exports Excel en français, qui utilisent le point-virgule, fonctionnent sans aucun réglage – et vous pouvez l’imposer. Par défaut, "12" devient le nombre 12, "true" devient un booléen et une cellule vide devient null – mais seulement là où rien ne change : 1.50, 1e3, 007 et les longs identifiants restent du texte, car en nombres ils seraient réécrits autrement. Désactivez cette option et chaque valeur reste exactement le texte qu’elle était.

Les en-têtes en double ou vides reçoivent un nom unique (column_3), une marque d’ordre des octets (BOM) est retirée, un fichier enregistré en UTF-16 ou dans une ancienne page de codes est lu comme tel et l’encodage est indiqué, les lignes qui ont plus de cellules que l’en-tête sont signalées avec leur numéro, et une erreur d’analyse est signalée avec sa ligne et sa colonne plutôt que par un message vague. L’aperçu montre les 200 premières lignes avant le téléchargement.

Comment Convertir un fichier CSV en JSON

  1. Déposez un fichier CSV, ou collez le texte CSV dans la zone.
  2. Laissez le séparateur en automatique ou choisissez-le ; décidez si les nombres et booléens doivent être typés.
  3. Cliquez sur « Convertir en JSON » et vérifiez l’aperçu.
  4. Téléchargez le .json.

Formats pris en charge et limites

Entrée
CSV / TSV (.csv, .tsv, .txt) – fichier ou texte collé
Sortie
Tableau JSON d’objets, indenté, UTF-8
Analyse
RFC 4180 : guillemets, séparateurs et retours à la ligne dans les cellules
Séparateur
Détection automatique : virgule, point-virgule, tabulation, barre verticale
Où ça tourne
Dans votre navigateur – rien n’est envoyé

Ne convient pas pour : Reconstruire des structures imbriquées – un CSV est plat, donc chaque ligne devient un objet plat ; les colonnes nommées avec des points ne sont pas réimbriquées.

Ce que la détection des types change exactement

Avec l’option activée, une cellule ne devient un nombre que si ce nombre se réécrit sous exactement le même texte : 12, -4 et 3.5 deviennent des nombres. 1.50, 1e3 et -0 restent du texte, car en nombres ils reviendraient sous la forme 1.5, 1000 et 0. Il en va de même pour 007, +5, " 12", 3,5, 1,250, une valeur avec un signe de pourcentage ou de devise, et un identifiant plus long que ce qu’un nombre peut contenir exactement.

true et false sont reconnus quelle que soit la casse : TRUE devient true. Une cellule vide devient null, mais le mot NULL reste du texte, car il peut aussi être une valeur ou un nom. Les dates comme 2024-01-05 restent toujours du texte.

Les lignes plus courtes ou plus longues que l’en-tête

Les cellules sont associées à l’en-tête par leur position. Une ligne qui a moins de cellules reçoit null pour les colonnes manquantes (une chaîne vide si la détection est désactivée). Une ligne qui a plus de cellules que l’en-tête n’a nulle part où ranger les cellules en trop : elles sont laissées de côté, et un message au-dessus de l’aperçu indique combien de lignes sont concernées et à quelle ligne commence la première. Cela signifie en général qu’une valeur comme Dupont, Jean contient le séparateur sans être entre guillemets.

Les lignes vides sont ignorées. Les noms d’en-tête sont débarrassés des espaces qui les entourent ; les valeurs, non : " Lyon" garde son espace.

Comment les guillemets sont lus, et ce que désigne une erreur

Un guillemet n’ouvre un champ entre guillemets que s’il en est le tout premier caractère ; au milieu, comme dans 5" écran, il fait partie du texte. Un guillemet qui ouvre un champ sans jamais être refermé entraînerait tout le reste du fichier dans une seule cellule : la conversion s’arrête donc et indique la ligne et la colonne où ce guillemet s’ouvre.

Détection du séparateur et encodage du fichier

La détection examine les 64 premiers Ko, jusqu’à 50 lignes, et choisit le séparateur qui donne le même nombre de colonnes sur le plus grand nombre de lignes ; les séparateurs placés entre guillemets ne comptent pas. Dans un fichier à points-virgules avec des décimales à virgule, comme A;1,5, c’est le point-virgule qui est trouvé, et 1,5 reste du texte.

Le fichier est lu d’après ce que sont ses octets : une marque d’ordre des octets (BOM), de l’UTF-16 (ce qu’Excel écrit sous le nom « Texte Unicode ») ou de l’UTF-8. Quand les octets ne forment pas de l’UTF-8 valide, c’est l’ancienne page de codes qui les fait lire comme des mots qui est retenue : les pages de codes Windows pour les textes d’Europe occidentale et centrale, cyrilliques, grecs, turcs, hébreux, arabes (persan et ourdou compris) et thaïs, ou GB18030, Big5, Shift_JIS et EUC-KR pour le chinois, le japonais et le coréen. La ligne du fichier le signale alors, par exemple « lu en windows-1256, pas en UTF-8 » ; un fichier très court offre peu de lettres pour en juger : vérifiez son aperçu.

Questions fréquentes

Mes fichiers sont-ils envoyés sur un serveur ?
Non. La conversion se fait entièrement dans votre navigateur, avec la puissance de votre propre appareil. Le fichier ne quitte pas votre ordinateur ni votre téléphone. Et une fois qu’un outil a servi une première fois, il continue de fonctionner sans connexion (la vidéo, la reconnaissance de texte et la suppression d’arrière-plan téléchargent leur moteur depuis ce site la première fois).
Comment sont traités les nombres, les booléens et les cellules vides ?
Avec « Détecter les nombres, booléens et cellules vides » activé, 12 et 3.5 deviennent des nombres, true/false des booléens et une cellule vide devient null. Une valeur ne devient un nombre que si elle se réécrit exactement à l’identique : 1.50, 1e3, les zéros devant (007) et les longs identifiants restent donc du texte, et rien n’est altéré en silence. Désactivez l’option pour tout garder en texte.
Mon fichier utilise des points-virgules ou des tabulations – dois-je faire quelque chose ?
Non. Le séparateur est détecté sur les premières lignes du fichier. Si la détection se trompe, choisissez le séparateur explicitement dans la liste.
Et si une cellule contient une virgule ou un retour à la ligne ?
C’est à cela que servent les guillemets, et l’analyseur les traite exactement comme la norme le prévoit : un champ entre guillemets peut contenir des séparateurs, des retours à la ligne et des guillemets doublés.

Outils associés

Plus dans Tableurs et données

Cette page dans d’autres langues: English · العربية · Deutsch · Español · Русский · Português · 中文 · हिन्दी · Türkçe · עברית · فارسی · اردو · Bahasa Indonesia · বাংলা