CSV (Comma-Separated Values, valeurs séparées par des virgules) est le format texte de données tabulaires le plus répandu. Presque tous les tableurs (Excel, Google Sheets, Numbers, WPS) prennent en charge l'import et l'export CSV, c'est également l'un des formats les plus courants pour l'échange de données et les imports/exports en lot. JSON (JavaScript Object Notation) est le format d'échange de données le plus utilisé dans les API Web et la programmation moderne. La conversion CSV vers JSON est un besoin très fréquent en développement : vous recevez un CSV exporté depuis Excel par un produit/opérationnel à convertir en JSON pour une API, vous exportez un CSV depuis une base de données à convertir en JSON comme données mock, vous migrez des données d'un CSV à importer dans une base de données documentaire comme MongoDB… Un bon outil de conversion permet d'économiser beaucoup de temps passé à assembler manuellement du JSON.
Le CSV paraît simple — champs séparés par des virgules, lignes séparées par des sauts de ligne — mais il comporte en réalité de nombreux pièges : que faire si un champ contient une virgule ? Un saut de ligne ? Comment échapper les guillemets ? Les CSV exportés dans différents pays peuvent également utiliser le point-virgule comme séparateur (en Europe car la virgule est utilisée comme séparateur décimal) ou la tabulation (format TSV). Si ces problèmes ne sont pas correctement gérés, les données analysées sont erronées. Cet outil implémente un analyseur conforme à la norme RFC 4180, gérant correctement les guillemets, l'échappement des guillemets doubles, les virgules/sauts de ligne à l'intérieur des champs et autres cas limites. Il ne s'agit pas d'un simple string.split(','), le résultat est précis et fiable.
La reconnaissance automatique du séparateur est une fonctionnalité très pratique. De nombreux développeurs, face à un fichier CSV, ont le réflexe d'utiliser split(','), mais Excel en version européenne exporte par défaut avec le point-virgule (;) comme séparateur. Dans ce cas, un split virgule traite toute la ligne comme un seul champ ; pour les fichiers TSV séparés par des tabulations, un split virgule est complètement erroné. L'outil compte les occurrences de virgules, points-virgules et tabulations sur chaque ligne, détermine automatiquement le séparateur le plus probable et convertit uniformément. Vous n'avez pas à vous soucier de l'origine du fichier, vous collez directement.
La réparation intelligente des erreurs est une fonctionnalité clé qui différencie cet outil des simples outils en ligne. Dans la pratique, les CSV que vous recevez sont souvent non normalisés : certaines lignes ont un nombre incorrect de colonnes (coupure lors du copier-coller, virgule supplémentaire au milieu), certains guillemets ne sont pas fermés (problème d'export), certains mélangent les séparateurs. L'analyse directe échouerait ou donnerait un résultat erroné. Face à ces problèmes, l'outil ne refuse pas directement la conversion : ① il liste le numéro de toutes les lignes problématiques et la cause de l'erreur ; ② il propose un bouton de réparation en un clic pour ajouter automatiquement des colonnes vides/tronquer/fermer les guillemets ; ③ même en cas d'avertissement, il s'efforce de sortir un résultat JSON exploitable, la conversion de l'ensemble du fichier n'échoue pas à cause d'une seule ligne erronée.
Le double mode de sortie formaté/minifié correspond à différents scénarios d'utilisation : le mode formaté avec indentation de 2 espaces pour le développement, le débogage et la lecture — la hiérarchie est claire, la structure des objets est visible d'un coup d'œil ; le mode minifié sans espaces ni sauts de ligne pour la production, les réponses d'API et les fichiers de configuration — plus compact, transmission plus rapide. Le basculement de l'interrupteur déclenche un nouveau rendu instantané, pas besoin de reconvertir.
Pourquoi le traitement 100% local est-il important ? Les fichiers CSV contiennent souvent des données métier réelles, des informations clients, des données de produit non publiées et autres contenus sensibles. Un envoi vers un serveur de conversion tiers comporte un risque de fuite de données. Avec cet outil, toute la logique d'analyse et de conversion s'exécute en JavaScript localement dans le navigateur. Le fichier est traité uniquement dans la mémoire de votre ordinateur, aucune requête réseau n'est effectuée, il fonctionne hors ligne. Cela résout fondamentalement le problème de la sécurité des données. Le traitement local présente également un avantage de rapidité : un fichier de plusieurs Mo est converti instantanément, pas besoin d'attendre les échanges réseau.
Les panneaux séparateurs ajustables par glisser-déposer et l'historique local sont des détails optimisés pour une utilisation fréquente : lors du traitement de tableaux larges vous pouvez élargir la zone de saisie, lorsque vous vous concentrez sur le résultat vous pouvez élargir la zone de sortie ; le CSV que vous n'avez pas fini de traiter est automatiquement restauré à la prochaine ouverture, pas besoin de retourner le chercher dans vos e-mails ou fils de discussion pour le recopier. La redirection en un clic vers l'outil de formatage JSON prend en compte le flux de travail réel : après conversion du JSON, vous avez généralement besoin de le formater, de le valider et de le minifier, la redirection directe évite de devoir copier-coller et ouvrir une nouvelle page.
Il est à noter : ① Toutes les valeurs CSV sont systématiquement converties en type chaîne de caractères. C'est un choix délibéré — le CSV ne contient pas d'information de type, la conversion automatique en nombre/boléen pourrait causer des erreurs (comme la perte des zéros en tête pour les codes postaux 00123, numéros de carte d'identité, etc.). Si vous avez besoin de conversion de type, veuillez la traiter dans votre code ; ② Actuellement seule la conversion unidirectionnelle CSV → JSON est prise en charge. Pour JSON → CSV utilisez l'outil correspondant de ce site ; ③ Pour les fichiers extrêmement volumineux (>10 Mo, millions de lignes), il est recommandé d'utiliser des outils en ligne de commande (comme csvtojson, jq). Cet outil est destiné aux scénarios de développement et débogage, il est parfaitement fluide pour un usage quotidien jusqu'à quelques dizaines de milliers de lignes.