Hola,
Tienes que posicionar el puntero de tu archivo al principio del mismo. No recuerdo si la existe o existió una función llamada fseek(), pero te recomiendo leas esto:
“r”: Abre el archivo para solo lectura y posiciona el puntero al principio del archivo.
“r+”: Abre el archivo para lectura y escritura y posiciona el puntero al principio del archivo.
“w”: Abre el archivo para escritura únicamente. Posiciona el puntero al principio del archivo y lo trunca con un largo de cero. Si el archivo no existe, intenta crearlo.
“w+”: Abre el archivo para lectura y escritura. Posiciona el puntero al principio del archivo y lo trunca con un largo de cero. Si el archivo no existe, intenta crearlo.
“a”: Abre el archivo para escritura únicamente pero posiciona el puntero al final del archivo. Si el archivo no existe, intenta crearlo.
“a+”: Abre el archivo para lectura y escritura. Posiciona el puntero al final del archivo. Si no existe, intenta crearlo.
“x”: Crea y abre para escritura únicamente el archivo. Posiciona el puntero al principio del archivo. Si el archivo ya existe, fopen() va a fallar y va a devolver un FALSE y generará un error de nivel E_WARNING. Si el archivo no existe, intenta crearlo.
“x+”: Crea y abre para lectura y escritura. Posiciona el puntero al principio del archivo. Si el archivo ya existe, fopen() devuelve FALSE y genera un error de nivel E_WARNING. Si el archivo no existe, intenta crearlo.
Fuente:
http://www.elwebmaster.com/editorial...-de-archivos-1.
Saludos!!!