C’est super le format CSV, c’est simple facile, à construire, facile à lire, sauf que
Le format CSV n’est pas un format texte mais un format binaire.
Le format CSV n’est pas un format texte mais un format binaire.
Le format CSV n’est pas un format texte mais un format binaire.
mais quand on s’en rend compte, c’est trop tard. On est piégé. Fini. Foutu.
Ça fonctionne bien tant qu’on travaille sur ses propres fichiers de son coté, mais dès qu’on s’ouvre au monde on découvre à quel point l’univers est cruel :
Niveau 0 :
les européens qui utilisent le point virgule à la place de la virgule
les caractères d’échappements avant les séparateurs de champs (,円)
les caractères d’échappements qui sont échappé eux meme (\,円)
Niveau 1 :
les séparateurs de champ qui sont contenus dans un bloc texte (",")
les caractères de bloc textes qui n’en sont pas vraiment car précédé par un caractère d’échappement (\")
Niveau 2 :
toutes les combinaisons possibles des niveau 0 et 1
le texte contenant des retours chariots
les formules excels stockées directement le CSV (="Du texte")
Et la découverte de cette année : Excel enregistre le "CSV au format UTF-8" en ajoutant un Indicateur d'ordre des octets — ou BOM pour les intimes. Il te faut donc commencer à lire les premiers octets du fichier voir s’il s’agit d’un BOM, et si c’est le cas ne commencer à parser le fichier qu’après. (un exemple de cas posant problème dans un ticket de bug ouvert que j’ai ouvert suite à ça)
Allez on le répète une dernière fois pour la route
Le format CSV n’est pas un format texte mais un format binaire.
[^] # Re: CSV
Posté par chimrod (site web personnel) . En réponse au lien Unix legend, who owes us nothing, keeps fixing foundational AWK code. Évalué à 4.
C’est super le format CSV, c’est simple facile, à construire, facile à lire, sauf que
mais quand on s’en rend compte, c’est trop tard. On est piégé. Fini. Foutu.
Ça fonctionne bien tant qu’on travaille sur ses propres fichiers de son coté, mais dès qu’on s’ouvre au monde on découvre à quel point l’univers est cruel :
Niveau 0 :
,円)\,円)Niveau 1 :
\")Niveau 2 :
="Du texte")Et la découverte de cette année : Excel enregistre le "CSV au format UTF-8" en ajoutant un Indicateur d'ordre des octets — ou BOM pour les intimes. Il te faut donc commencer à lire les premiers octets du fichier voir s’il s’agit d’un BOM, et si c’est le cas ne commencer à parser le fichier qu’après. (un exemple de cas posant problème dans un ticket de bug ouvert que j’ai ouvert suite à ça)
Allez on le répète une dernière fois pour la route
Pfff ça va mieux.