Devo serializzare una struttura ma ci sto sbattendo la testa da ieri...
il codice č questo... il problema č che quando ri tira fuori i dati... sono tutti diversi e incomprensibili... qualcuno ha qualche idea?
codice:struct buffer buf; main() { ... } void serialize(struct buffer b) { int i= 0; int end = 0; FILE *pFile; printf("sono nella serialize(1)\n"); if ((pFile=fopen("s.dat", "wb"))==NULL){ printf("Il file non esiste!"); exit(1); } printf("sono nella serialize(2)\n"); while(end=0) { fwrite(&b,sizeof(struct buffer),1,pFile); end =1; } fclose(pFile); printf("Ho anche chiuso il file\n"); } void deserialize() { struct buffer b; int i= 0; FILE *pFile2; printf("sono nella deserialize(1)\n"); if ((pFile2=fopen("s.dat", "rb"))==NULL){ printf("Il file non esiste!"); exit(1); } printf("sono nella serialize(2)\n"); while(!feof(pFile2)) { fread(&b,sizeof(struct buffer),1,pFile2); } fclose(pFile2); printf("1= %d; 2=%s; 3=%s; 4=%d; 5=%d; 6=%d; 7='%s'\n", b.mtype,b.loginDest, b.loginMitt, b.msgid, b.pid, b.status, b.mtext); printBuffer(b); printf("Ho anche chiuso il file\n"); //return buf; }

Rispondi quotando
quindi non ti scriveva nel file.
