Ik heb onderstaande code gemaakt. Werkt helemaal prima. Alleen als het bestand wel bestaat maar de inhoud ik helemaal leeg is gaat het niet goed. Is ook wel te begrijpen omdat met fseek(stream, 0 - sizeof(bak), SEEK_END); ik buiten het geheugen gebied kijk. Dit wil ik natuurlijk niet. Nu is mijn vraag, hoe kan je snel en simpel kijken of het bestand inhoud heeft. Beter gezegt een controle dat je vertelt of er wel of geen inhoud is.
C:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
| int HoeveelheidBakken(FILE *stream, char bestandNaam[], struct bakstruct bak) { int hoeveelheid = 0; stream = fopen(bestandNaam, "rb"); if(stream != NULL){ fseek(stream, 0 - sizeof(bak), SEEK_END); fread(&bak, sizeof(bak), 1, stream); hoeveelheid = bak.bakNummer; fclose(stream); printf("\nhoeveelheid: %d", hoeveelheid); } else { printf("Bestand bestaat niet!"); } return hoeveelheid; } |