Bonjour,
Je travaille avec un fichier binaire sous windows, au moment d'écrire dans le fichier aucun soucis ça se passe très bien, mais j'ai des choses en plus dans le fichier qui se rajoute a la fin.
En faite j'ai l'impression que ce sont des bout de PATH
Voici le code d'écriture:
carnet est un tableau de pointeur sur une structure et nbpers est le nombre d'éléments dans le tableau.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 void Sauvegarde(void) { FILE *fd = fopen("carnet.bin", "ab"); if(fd) { int i = 0; for(i = 0; i < nbpers; i++) { if(fwrite(carnet[i], sizeof(fiche), 1, fd)) printf("Bien sauvegardé\n"); } fclose(fd); } }
je met la fonction de recuperation aussi:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 typedef struct { char nom[50]; char prenom[50]; char tel[16]; unsigned char age; } fiche; fiche *carnet[50];
Si quelqu'un sait d'où ça peut venir.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 void Restaurer(void) { FILE *fd = fopen("carnet.bin", "rb"); if(fd) { nbpers = 0; while(!feof(fd)) { carnet[nbpers] = malloc(sizeof(fiche)); fread(carnet[nbpers], sizeof(fiche), 1, fd); nbpers++; } fclose(fd); } }
Merci![]()
Partager