Secondo me fai prima ad usare fread e fwrite.
Così usi una sola riga di codice per leggere/scrivere un'intera struct!