Existe-t-il un moyen officiel d'autoriser un fichier au format CSV à autoriser les commentaires, soit sur sa propre ligne OU à la fin d'une ligne?
J'ai essayé de vérifier Wikipédia à ce sujet et également la RFC 4180, mais les deux ne mentionnent rien qui me porte à croire que cela ne fait pas partie du format de fichier, donc ce n'est pas de chance pour moi et je devrais alors utiliser un fichier séparé ReadMe.txt pour expliquer le fichier.
Enfin, je sais qu'il est facile pour moi d'ajouter mes propres commentaires, mais j'espérais que quelque chose comme Excel pourrait simplement l'importer immédiatement sans qu'un consommateur ait à personnaliser le processus d'importation.
Alors, des pensées?
csv
comments
standards
file-format
Pure.Krome
la source
la source
Réponses:
La "norme" CSV (telle qu'elle est) ne dicte pas comment les commentaires doivent être traités, non, c'est à l'application d'établir une convention et de s'y tenir.
la source
Dans les données d'ingénierie, il est courant de voir le
#
symbole dans la première colonne utilisé pour signaler un commentaire.J'utilise la bibliothèque d'analyse ostermiller CSV pour lire et traiter ces fichiers. Cette bibliothèque vous permet de définir le caractère de commentaire. Après l'opération d'analyse, vous obtenez un tableau contenant uniquement les données réelles, aucun commentaire.
la source
Non, CSV ne spécifie aucun moyen de baliser les commentaires - ils seront simplement chargés par des programmes comme Excel en tant que cellules supplémentaires contenant du texte.
Le plus proche que vous pouvez gérer (avec CSV importé dans une application spécifique telle qu'Excel) est de définir une manière spéciale de baliser les commentaires qu'Excel ignorera. Pour Excel, vous pouvez «masquer» le commentaire (dans une certaine mesure) en l'incorporant dans une formule. Par exemple, essayez d'importer le fichier csv suivant dans Excel:
Vous vous retrouvez toujours avec une cellule dans la feuille de calcul qui affiche le numéro 0, mais le commentaire est masqué.
Alternativement, vous pouvez masquer le texte en le complétant simplement avec des espaces afin qu'il ne s'affiche pas dans la partie visible de la cellule:
Notez que vous devez suivre le texte du commentaire avec une virgule pour qu'Excel remplisse la cellule suivante et masque ainsi toute partie du texte qui ne tient pas dans la cellule.
Des hacks désagréables, qui ne fonctionneront qu'avec Excel, mais ils peuvent suffire à rendre votre sortie un peu plus ordonnée après l'importation.
la source
Je pense que la meilleure façon d'ajouter des commentaires à un fichier CSV serait d'ajouter un champ "Commentaires" ou d'enregistrer directement dans les données.
La plupart des applications d'analyse CSV que j'ai utilisées implémentent à la fois le mappage de champ et le choix d'enregistrement. Donc, pour commenter les propriétés d'un champ, ajoutez un enregistrement juste pour les descriptions de champ. Pour commenter un enregistrement, ajoutez un champ à la fin de celui-ci (enfin, tous les enregistrements, vraiment) juste pour les commentaires.
Ce sont les deux seules raisons auxquelles je peux penser pour commenter un fichier CSV. Mais le seul problème que je peux prévoir serait les programmes qui refusent d'accepter le fichier du tout si un seul enregistrement ne passe pas certaines règles de validation. Dans ce cas, vous auriez du mal à écrire un enregistrement de description de champ de type chaîne pour tous les champs numériques.
Je ne suis en aucun cas un expert, alors n'hésitez pas à signaler toute erreur dans ma théorie.
la source
Un fichier séparé par des virgules n'est en réalité qu'un fichier texte dont les lignes sont constituées de valeurs séparées par des virgules.
Il n'y a pas de norme qui définit le contenu d'un fichier CSV, il n'y a donc pas de manière définie d'indiquer un commentaire. Cela dépend du programme qui importera le fichier CSV.
Bien sûr, c'est généralement Excel. Vous devez vous demander comment Excel définit un commentaire? En d'autres termes, qu'est-ce qui inciterait Excel à ignorer une ligne (ou une partie de ligne) dans le fichier CSV? Je ne suis au courant de rien qui pourrait faire cela.
la source
There is no standard which defines the contents of a CSV file
Faux.Si vous analysez le fichier avec une commande FOR dans un fichier batch, un point-virgule fonctionne (;)
PRODUCTION:
la source
Si vous avez besoin de quelque chose comme:
Votre CSV peut contenir les lignes suivantes:
Faites très attention aux «guillemets» de la première ligne.
Lorsque vous convertissez votre texte en colonnes à l'aide de l'assistant Excel, n'oubliez pas de cocher la case "Traiter les délimiteurs consécutifs comme un seul", en le configurant pour utiliser "guillemets" comme délimiteur.
Ainsi, Excel fractionnera le texte au niveau des virgules, en conservant la ligne «commentaire» comme une valeur de colonne unique (et il supprimera les guillemets).
la source