Pb ecriture ds fichier

YOHANONEILL Messages postés 13 Date d'inscription mercredi 6 avril 2005 Statut Membre Dernière intervention 8 avril 2005 - 7 avril 2005 à 11:20
YOHANONEILL Messages postés 13 Date d'inscription mercredi 6 avril 2005 Statut Membre Dernière intervention 8 avril 2005 - 8 avril 2005 à 09:03
bonjour,



voila j'ai un programme ou j'écrit dans un fichier des lignes, mais
parfois la ligne que j'insert dans le fichier s'écrit 20000 ou 60000
fois, je comprend po dou ca vien! voici mon code







int ecrire(FILE* fp,char* filename)

{

//ouverture en append du fichier filename pour écriture du nouveau poste créé

if(( fp=fopen(filename,"a+"))==NULL)

{

fprintf(stderr, "Erreur à l'ouverture du fichier %s \n\n", filename);

exit(1);

return 0;

}else{

//si l'ouverture du fichier se passe bien, alors on écrit les informations dedans

//on écrit donc le deplacement effectuee



fprintf(fp,"%s;",&statut);

fprintf(fp,"%s;",&num_inv);

fprintf(fp,"%s;",&nom);

fprintf(fp,"%s;",&nouveau_bat);

fprintf(fp,"%s",&nouveau_num_bureau);

fprintf(fp,"\n");

//fprintf(fp,"%s;",ctime (&date));



fclose(fp);

return 1;

}

}



et ya aucune boucle !



merci d'avance si qq a eu le meme probleme a++

3 réponses

ymca2003 Messages postés 2070 Date d'inscription mardi 22 avril 2003 Statut Membre Dernière intervention 3 juillet 2006 7
7 avril 2005 à 16:02
Faudrait mettre l'utilisation de cette fonction car en effet il n'a pas de boucle ici mais il doit bien y en avoir une qui appelle cette fct pour écrire plusieures lignes.

pour faire un printf (en fct dérivées) d'une chaîne c'est :
printf("%s", chaine);

faire printf("%s", &chaine) ne marche que pour les chaîne statiques (char chaine[12]) mais pas pour les dynamiques ou les char* chaine).
0
simtiers Messages postés 207 Date d'inscription jeudi 3 avril 2003 Statut Membre Dernière intervention 2 novembre 2006
7 avril 2005 à 18:51
Salut



Le mieux, ce serait que tu nous montres comment tu appelles la fonction
Ecrire dans ton prog, car apparemment, ici, il n'y a aucun pb, si ce
n'est ce que dit ymca2003.



Une explication possible de ton pb : apparemment, tu utilises des
variables globales (statut....) => peut-être qu'elle ne sont pas
mises à jour correctement avant d'être écrites.





L'intelligence, c'est comme les parachutes : quand on n'en a pas, on s'écrase
(Pierre Desproges)
0
YOHANONEILL Messages postés 13 Date d'inscription mercredi 6 avril 2005 Statut Membre Dernière intervention 8 avril 2005
8 avril 2005 à 09:03
lol, ouais jespere que tu dit pas ca pour moi ^^

ba en fet le probleme venait de la fin du programme, je suis sur PDA et en mode console et qd je quitte mal, ou qd ca plante, et bein sa mé plein de merde ds le fichier, alors que si je quitte avec mon menu (return 1) alors ya pu d'écriture multiple ds le fichier voila! merki a tous
0
Rejoignez-nous