Données et feuilles de calcul · CSV Nettoyeur
CSV séparé par des points-virgules expliqué : virgules décimales et paramètres régionaux
· Contexte
csv délimiteurs interopérabilité
Dans une grande partie de l'Europe, une virgule est le séparateur décimal, donc le fichier « séparé par des virgules » utilise des points-virgules à la place. Cet article explique la logique locale derrière la division, comment les feuilles de calcul décident et ce qui se passe lorsque les fichiers traversent la frontière.
Un fichier provenant d'un collègue à l'étranger s'ouvre dans une seule colonne — au moment où la plupart des gens découvrent que CSV a des dialectes
Une exportation de point-virgule ouverte sous l'hypothèse d'une virgule uniquement apparaît sous la forme d'une large colonne de texte. Ce symptôme reflète un choix de l'analyseur et non une preuve que les données sont corrompues. ToolAcre propose un point-virgule à côté de la virgule, de la tabulation et de la barre verticale et réécrit le caractère réellement utilisé dans le contrôle.
La première réponse doit être structurelle : inspectez le séparateur brut et prévisualisez. Ne remplacez pas aveuglément chaque point-virgule, car le texte cité peut contenir des signes de ponctuation et la modification des octets sans analyse peut modifier les valeurs. Une lecture prenant en compte le dialecte distingue les séparateurs du contenu des cellules.
Virgules décimales : pourquoi « 1,5 » est un nombre valide dans de nombreux paramètres régionaux et pourquoi un délimiteur par virgule le rendrait impossible à analyser
Le classeur explique les points-virgules par des virgules décimales. C'est un contexte d'échange utile, mais cette implémentation n'analyse jamais `1,5` comme un nombre localisé. Il préserve la cellule sous forme de chaîne. La signification de la virgule à l'intérieur d'une valeur et la signification du point-virgule entre les champs restent donc séparées au moment de l'analyse.
Ne convertissez pas les marques décimales lors de la réparation des délimiteurs, sauf si un schéma de destination l'exige explicitement. Un champ de code ou de prose peut légitimement contenir une virgule. ToolAcre gère les limites des tables et laisse l'interprétation numérique à l'application réceptrice.
Le contexte décimal-virgule est plausible, mais ToolAcre traite les valeurs de cellule comme des chaînes et n'analyse pas les nombres localisés
L'outil ne consulte pas le paramètre régional ou de séparateur de liste du système d'exploitation. La détection automatique analyse un échantillon de dix lignes sous chaque candidat pris en charge, mesure la largeur maximale et récompense les candidats produisant un rectangle cohérent. Si aucun ne crée au moins deux colonnes, cela revient à la virgule.
Cette méthode basée sur des fichiers est reproductible d'un emplacement à l'autre. Il peut toujours faire un mauvais choix sur des données inhabituelles ou sur une seule colonne, c'est pourquoi le sélecteur manuel existe. Le contrôle reflète la valeur détectée et sa modification réanalyse le texte original, ignorant les étapes de nettoyage déjà appliquées.
ToolAcre détecte la forme du fichier ; il ne lit pas les paramètres de séparateur de liste du système d'exploitation
Sous le mauvais délimiteur, un enregistrement point-virgule reste une cellule au lieu de devenir plusieurs colonnes. ToolAcre n'interprète pas les nombres localisés, il ne peut donc pas modifier silencieusement `1,5` en une autre valeur numérique pendant l'analyse. L'échec est visible dans le nombre de colonnes et la forme de l'aperçu.
L'incompatibilité inversée peut diviser les virgules non citées en cellules supplémentaires et déclencher des avertissements de lignes irrégulières. Les virgules entre guillemets restent protégées par la machine à états. Lisez les avertissements et comparez la largeur d'en-tête attendue plutôt que de supposer qu'une première ligne plausible prouve que tous les enregistrements ultérieurs sont alignés.
L'analyseur affiche des lectures structurelles, pas des changements numériques silencieux
Utilisez `item;price;note` suivi de `A;1,5;"small, red"` et `B;2,0;plain`. L'analyse du point-virgule produit trois colonnes, en préservant les deux chaînes contenant des virgules. L'analyse des virgules laisse des points-virgules à l'intérieur des champs et peut créer des divisions trompeuses autour des virgules.
Le détecteur doit privilégier le point-virgule car ce candidat donne une forme cohérente à trois colonnes, contrairement aux virgules. Cet exemple prouve le comportement de l'analyseur sans prétendre que 1,5 a une valeur numérique. Le système récepteur doit appliquer sa propre convention décimale documentée.
Exemple pratique : détection de point-virgule avec des valeurs de chaîne contenant des virgules
L'échange transfrontalier s'améliore lorsque le délimiteur de nom de l'expéditeur et du destinataire, le codage, la politique d'en-tête et les conventions de valeur. « CSV » à lui seul ne règle aucun d’entre eux. Incluez un petit appareil et vérifiez-le via l'analyseur de réception exact avant d'envoyer une exportation de production.
Si une sortie par virgule est requise, sélectionnez une virgule pour la sérialisation une fois que la source du point-virgule a été analysée correctement. Les champs contenant des virgules décimales seront alors automatiquement cités, les préservant sous forme de texte de cellule. La conversion de syntaxe ne traduit pas la notation décimale ou les formats monétaires.
Ce que cela ne couvre pas : la conversion des formats numériques à l'intérieur des données ; le délimiteur et la marque décimale sont des problèmes distincts
La conversion du format numérique se situe en dehors de la réparation du délimiteur de ToolAcre. Il ne transforme pas les virgules en points décimaux, ne reconnaît pas les séparateurs de milliers et ne convertit pas les montants. Il s’agit d’une préservation délibérée des chaînes et non d’une inférence numérique incomplète. Le schéma de destination est propriétaire de cette transformation.
La route ne peut pas non plus garantir la manière dont un tableur choisit les séparateurs lorsqu'un fichier est ouvert. Il ne peut produire que le délimiteur sélectionné dans sa sortie et les guillemets standard autour des caractères en conflit. Testez l’application cible plutôt que d’inventer le comportement des fournisseurs.
Le délimiteur suit les paramètres régionaux, pas le fichier - comment la réparation du délimiteur de ToolAcre CSV Cleaner vous donne un fichier avec un séparateur connu
Dans cet outil, le délimiteur suit la forme du fichier analysé ou un choix manuel, et non les paramètres régionaux. Cette correction est importante car deux analystes de bureaux différents devraient voir le même caractère source détecté lorsqu'ils chargent un texte identique. L'environnement ne réécrit pas la liste des candidats de l'analyseur.
Confirmez le contrôle, inspectez les largeurs de rangée et exportez pour le consommateur connu. Le point-virgule n'est ni une virgule brisée CSV ni une preuve automatique des données décimales-virgules. Il s'agit d'un séparateur structurel pris en charge, et ToolAcre traite chaque valeur entre les séparateurs comme du texte.