• Domingo 15 de Diciembre de 2024, 13:39

Autor Tema:  sustituir linea de un fichero de texto  (Leído 1012 veces)

antlcn

  • Nuevo Miembro
  • *
  • Mensajes: 12
    • Ver Perfil
sustituir linea de un fichero de texto
« en: Miércoles 17 de Marzo de 2010, 16:08 »
0
hola, estoy haciendo un programa que trabaja con un fichero de texto y necesito una función que modifique una linea, el programa consiste en introducir en un fichero de texto titulo (de un libro), autor y editorial...cada dato en una linea...tal que así:

libro1
autor1
editorial1
libro2
autor2
editorial2...

a la funcion se le pasas el titulo del libro (ya que la busqueda se hace por titulo) y también la nueva editorial, tengo esto..pero no funciona y por mas vueltas que le doy no lo saco.
Código: C
  1. void modificarEditorial(char *fichero, char *titulo, char *Nedit)
  2. {
  3.     FILE *f;
  4.     char *aux;
  5.     if((f=fopen(fichero, "r+"))==NULL){
  6.         printf("nError al abrir ficheron");
  7.         exit(-1);
  8.     }
  9.     while(fscanf(f, "%s", aux)==1){
  10.         if(strcmp(aux, titulo)==0){
  11.             fseek(f, 2, SEEK_CUR);
  12.             fputs(Nedit, f);
  13.         }
  14.     }            
  15.     fclose(f);
  16. }
  17.  

un saludo

y gracias de antemano!