Qu'est-ce que le CSV
CSV (Comma-Separated Values) est un fichier de valeurs séparées par des virgules. C'est le format de données tabulaires le plus simple, chaque ligne étant un enregistrement et les champs séparés par des virgules.
Nom,Âge,Ville
Pierre,25,Paris
Marie,30,Lyon
Le CSV est un format universel d'échange de données. Excel, les bases de données et les langages de programmation peuvent tous lire et écrire du CSV.
Règles d'analyse CSV
Structure de base
- Une ligne = un enregistrement
- Les champs sont séparés par un séparateur (généralement la virgule)
- La première ligne est généralement l'en-tête
- Les enregistrements sont séparés par des sauts de ligne
Champ contenant une virgule
Si un champ contient une virgule, entourez-le de guillemets doubles :
Nom,Description
Pierre,"Bonjour, monde"
Sans guillemets, il sera considéré comme deux champs.
Champ contenant des guillemets doubles
Si un champ contient des guillemets doubles, échappez-les en les doublant :
Nom,Description
Pierre,"Il a dit ""Bonjour"""
Champ contenant un saut de ligne
Si un champ contient un saut de ligne, entourez-le de guillemets doubles :
Nom,Description
Pierre,"Première ligne
Deuxième ligne"
Variantes de séparateur
- Virgule : CSV standard
- Point-virgule : courant en Europe (Excel européen par défaut)
- Tabulation : TSV (Tab-Separated Values)
- Barre verticale : certains systèmes utilisent |
Confirmez le séparateur avant la conversion.
Nettoyage de données
Suppression des espaces
- Espaces avant et après les champs : trim
- Lignes vides : supprimer
- En-tête BOM : retirer
Uniformiser les formats
- Dates : uniformiser en YYYY-MM-DD
- Nombres : uniformiser le séparateur décimal (sans séparateur de milliers)
- Booléens : uniformiser en true/false ou 0/1
- Encodage : uniformiser en UTF-8
Traitement des valeurs manquantes
- Champs vides : remplir avec une valeur par défaut ou marquer null
- Lignes entières manquantes : supprimer ou compléter
- Champs clés manquants : marquer comme erreur
Déduplication
- Lignes entièrement dupliquées : supprimer
- Clés primaires dupliquées : conserver la plus récente ou fusionner
Problèmes courants
Caractères chinois illisibles
L'encodage CSV est le problème le plus courant. Excel utilise par défaut GBK (version chinoise), les autres outils utilisent UTF-8.
Solutions :
- À l'export Excel, choisir « CSV UTF-8 »
- Utiliser un éditeur de texte pour enregistrer en UTF-8
- Les outils de conversion prennent en charge la détection automatique de l'encodage
Erreur de reconnaissance du séparateur
Le CSV utilise des virgules, mais Excel européen utilise par défaut des points-virgules. À l'ouverture du CSV, tout se retrouve dans une seule colonne.
Solutions :
- Ouvrir avec un éditeur de texte pour confirmer le séparateur
- Lors de l'importation dans Excel, spécifier le séparateur (Données → Convertir)
En-tête BOM
Les CSV UTF-8 exportés par Excel peuvent contenir un BOM (\uFEFF). Un caractère invisible apparaît avant le premier nom de champ.
Solution : retirer le BOM avec un éditeur de texte, ou utiliser un outil de conversion qui le gère automatiquement.
Nombres en notation scientifique
Les nombres longs (numéros d'identification, numéros de commande) deviennent en notation scientifique dans Excel (1.23E+18).
Solutions :
- Dans Excel, définir la colonne au format « Texte » avant de coller
- Dans le CSV, ajouter une apostrophe avant le nombre ('123456)
- Lors de l'importation, spécifier la colonne comme texte
Format de date incohérent
Les formats de date varient selon les régions :
- Chine : 2024/1/1
- États-Unis : 1/1/2024
- Europe : 1.1.2024
Solution : uniformiser en ISO 8601 (2024-01-01).
Sauts de ligne incohérents
Windows utilise \r\n, Mac/Linux utilise \n. La combinaison des deux entraîne des erreurs d'analyse.
Solution : uniformiser les sauts de ligne.
Conversion CSV
CSV vers JSON
Les programmes traitent le JSON plus facilement que le CSV. Utilisez l'outil CSV vers JSON pour une conversion en un clic.
CSV vers Excel
Le CSV ouvert dans Excel devient un tableau. Mais attention à l'encodage et au séparateur.
Excel vers CSV
Enregistrez Excel au format CSV. À noter :
- Seule la feuille active est enregistrée
- Les formules deviennent des valeurs
- La mise en forme est perdue
- Les feuilles multiples doivent être enregistrées séparément
Traitement par lots
Fusionner plusieurs CSV
Fusionner plusieurs fichiers CSV en un seul :
- Confirmer que les en-têtes sont identiques
- Conserver l'en-tête du premier fichier
- Supprimer l'en-tête des fichiers suivants
- Concaténer le contenu
Diviser un gros CSV
Diviser un gros CSV par nombre de lignes :
- Conserver l'en-tête dans chaque fichier
- Diviser selon le nombre de lignes spécifié
- Générer plusieurs petits fichiers
Filtrer les données
Filtrer les données CSV selon des conditions :
- Un champ égal à une valeur spécifique
- Filtrage par plage numérique
- Filtrage par plage de dates
Traiter le CSV avec DocsAll
- Télécharger un CSV ou coller le contenu
- Analyse automatique
- Conversion en JSON
- Copier ou télécharger
Traitement côté navigateur, les données ne sont pas téléchargées.
Techniques de traitement
Examiner d'abord les données
Avant le traitement, examinez le contenu du CSV :
- Ouvrir avec un éditeur de texte (pas Excel)
- Confirmer le séparateur
- Confirmer l'encodage
- Confirmer l'en-tête
- Vérifier l'intégrité des données
Sauvegarder le fichier original
Avant le traitement, sauvegardez le CSV original. En cas d'erreur de nettoyage, vous pouvez revenir en arrière.
Tester sur un petit lot
Traitez d'abord quelques lignes de test, confirmez que la logique est correcte avant le traitement par lots.
Valider les résultats
Après le traitement, validez :
- Le nombre de lignes est-il correct (après nettoyage, il ne devrait pas être anormalement réduit)
- Le nombre de champs est-il cohérent
- Vérification ponctuelle des données clés
Résumé
L'essentiel du traitement CSV : comprendre les règles d'analyse (virgules, guillemets, sauts de ligne), résoudre les problèmes d'encodage (UTF-8, BOM), nettoyer les données (espaces, formats, valeurs manquantes), convertir les formats (JSON, Excel). Examiner les données avant le traitement, valider les résultats après. L'outil DocsAll CSV vers JSON s'exécute côté navigateur, les données ne sont pas transmises.