Problèmes avec Fread et Fwrite
Bonjour!!
Je tente de sauvegarder des données d'un tableau en char et de les charger.
Afin de ne pas trop prendre de place, j'ai tenté d'allouer dynamiquement la taille des données de type char, en y incluant auparavant la taille de ces données. Cependant au bout d'une trentaine d'annonces, ça ne charge plus rien.
Je reconnais que j'ai un peu de mal avec les & avant le fread ou le fwrite.
Je ne souhaite pas avoir des blocs de char de même taille....
Pour sauvegarder
Code:
1 2 3 4 5 6 7 8 9 10 11 12
|
FILE *File;
if(fopen_s(&File,Temporary_File,"w")==0){
fwrite(Annonce_Max,sizeof(long),6,File);
for(long j=0;j<6;j++){
for(long i=1;i<Annonce_Max[j];i++){
fwrite(&Annonce[j][i].s_URL,sizeof(long),1,File);
fwrite(Annonce[j][i].URL,sizeof(char*),Annonce[j][i].s_URL,File);
}
}
fclose(File);
} |
Pour charger
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14
| FILE *File;
if(fopen_s(&File,Temporary_File,"r")==0){
fread(&Annonce_Max,sizeof(long),6,File);
for(long j=0;j<6;j++){
for(long i=1;i<Annonce_Max[j];i++){
fread(&Annonce[j][i].s_URL,sizeof(long),1,File);
Annonce[j][i].URL = (char*)malloc(Annonce[j][i].s_URL);
fread(Annonce[j][i].URL,sizeof(char),Annonce[j][i].s_URL,File);
}
}
fclose(File);
} |
Quelqu'un pourrait il m'indiquer la marche à suivre! Merci!