Lire en mode append

cs_bethany Messages postés 26 Date d'inscription vendredi 2 avril 2004 Statut Membre Dernière intervention 15 mars 2005 - 8 juil. 2004 à 11:44
glipper Messages postés 246 Date d'inscription dimanche 2 juin 2002 Statut Membre Dernière intervention 11 septembre 2016 - 8 juil. 2004 à 13:20
J'ouvre avec fopen un fichier csv (se lit avec excel).
Je le met en mode 'append' afin d'ajouter a la fin de nouvelles données.
Le truc c'est qu'il se peut que les données que je veux ajouter soient déja écrites dans le fichier.

Alors je voulais faire une boucle while (fichier != NULL) puis vérifier que les données n'ont pas été déja rentrées.
Mais avec le mode append, la boucle while ne peut pas macher.

Avez vous une idée de part quel autre biais que le while je pourrais passer?

Merci a tous !
Bonne programmation :)
Bethany
A voir également:

2 réponses

glipper Messages postés 246 Date d'inscription dimanche 2 juin 2002 Statut Membre Dernière intervention 11 septembre 2016 1
8 juil. 2004 à 13:06
Ben pourquoi tu ne reviens pas au debut du fichier avec un fseek(File, 0, SEEK_SET); puis tu fais ta boucle while par exemple comme ceci pour recuperer le contenu du fichier:

int i = 0;
char TextFile[bcp];
while ( !feof(File))
{
TextFile[i] = fgetc(File);
i++;
}
TextFile[i] = '\0';

Et enfin tu verifies que ce que tu cherche n'est pas deja inseré par exemple comme ceci:

if (strstr(...)==NULL)
=> pas déja inseré
else
=> inseré

Non ? Je sais pas, moi je ferais quelquechose comme ça... sauf peut-etre pour lire le fichier ou c'est un peu lourd.

++ Glipper
0
glipper Messages postés 246 Date d'inscription dimanche 2 juin 2002 Statut Membre Dernière intervention 11 septembre 2016 1
8 juil. 2004 à 13:20
Oups par contre, il faudra surement ouvrir le fichier avec le mode "a+" -> "Opens for readind and appending"(msdn)

Sinon, tu peux tjours l'ouvrir une premiere fois, le lire, puis le refermer et le rouvrir en mode ajout si nécessaire apres...

++ Glipper
0
Rejoignez-nous