Tengo el siguiente código en C, el cual lee el archivo.
#include <stdio.h> #include <stdlib.h>
int main(){ FILE* archivo = fopen("leer.txt","r"); char * buffer = NULL; int i, c; c = fgetc(archivo); while(!feof(archivo)) { buffer = (char*)realloc(NULL, sizeof(char)); i = 0; while( c != '\n') { buffer = c; i++; buffer = (char*)realloc(buffer, (i+1)*sizeof(char)); c = fgetc(archivo); } /*Agrego el \n al buffer*/ buffer = (char*)realloc(buffer, (i+2)*sizeof(char)); buffer = c; buffer[i+1] = 0; /*Trabajar con el buffer*/ printf("%s", buffer); free(buffer); c = fgetc(archivo); } }
lo que deseo es que al detectar una palabra, este cuente dos lineas más y verifique si la linea esta vacía (en blanco), si es así, que no la copie al archivo nuevo, y continué buscando en las siguientes lineas.
Soy bastante nuevo en esto, y no he logrado como resolverlo, por eso pido algo de ayuda.
Tengo un archivo con estas lineas, donde la palabra que deseo buscar es: "FACTOR", al encontrarla debe contar 2 lineas más y comprobar si esa linea esta en blanco (vacía), si es así, no copiar esa linea y continuar buscando la misma palabra en las siguientes lineas y volver a comprobar al sumar 2 lineas más es vacía.
1- %%XGF (FACTOR) 2- P0 3- 4- FUERA 5- LEIVA
Pido de su ayuda, ya que no he podido realizarlo.
|