Foros del Web » Programación para mayores de 30 ;) » C/C++ »

No actualiza bien

Estas en el tema de No actualiza bien en el foro de C/C++ en Foros del Web. Hola, buenas Intento actualizar un registro en un fichero binario pero algo hago mal que al grabar el registro actualizado me lo añade al final ...
  #1 (permalink)  
Antiguo 17/11/2013, 10:46
 
Fecha de Ingreso: marzo-2012
Mensajes: 45
Antigüedad: 12 años, 7 meses
Puntos: 0
No actualiza bien

Hola, buenas

Intento actualizar un registro en un fichero binario
pero algo hago mal que al grabar el registro actualizado me lo añade al
final del archivo. En principio se trata del registro num=1, pero puede ser cualquier otro

FILE* pf;
pf = fopen("./datos.dat","a+b");

int num=1

struct tRegistro reg;
fseek(pf, sizeof(reg)*(num-1),SEEK_SET);
fread(&reg,sizeof(struct tregistro),1,pf);

/* aqui modifico algo de reg */

fseek(pf, sizeof(reg)*(num-1),SEEK_SET);
fwrite(&reg, sizeof(struct tRegistro),1,pf);


pero me añade un nuevo registro en lugar de modificarlo. Muchas gracias

Última edición por javiinet; 17/11/2013 a las 10:58
  #2 (permalink)  
Antiguo 17/11/2013, 12:53
 
Fecha de Ingreso: marzo-2012
Mensajes: 45
Antigüedad: 12 años, 7 meses
Puntos: 0
Respuesta: No actualiza bien

Ya está.

Visto
  #3 (permalink)  
Antiguo 18/11/2013, 14:23
 
Fecha de Ingreso: agosto-2008
Mensajes: 240
Antigüedad: 16 años, 2 meses
Puntos: 6
Respuesta: No actualiza bien

Hola,

¿Podrías comentar cuál era el error? Así, en el futuro, si alguien lo necesitara, encontraría tu respuesta.

Muchas gracias,
gonzo

Etiquetas: int, struct
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 13:50.