• Lunes 16 de Diciembre de 2024, 00:32

Autor Tema:  Busqueda En Archivos  (Leído 1467 veces)

cz2002

  • Nuevo Miembro
  • *
  • Mensajes: 14
    • Ver Perfil
Busqueda En Archivos
« en: Lunes 12 de Abril de 2004, 04:39 »
0
hola soy nuevo en el foro y empezando al trabajar con c y c++, tengo uan consulta, nesecito abrir un archivo de texto...( eso ya se como hacerlo) y digitar una palabra. y que el programa sea capaz de buscar en el archivo de texto esa palabra si la encuentra imprimir la linea en q se encuenta la palabra.

q funciones puedo utilizar para desarrollarlo??

chuidiang

  • Miembro MUY activo
  • ***
  • Mensajes: 123
  • Nacionalidad: es
    • Ver Perfil
    • http://www.chuidiang.com
Re: Busqueda En Archivos
« Respuesta #1 en: Lunes 12 de Abril de 2004, 11:09 »
0
Con fgets() puedes leer una linea completa del fichero.

Con strstr() puedes buscar una subcadena dentro de una cadena, en tu caso concreto, una palabra dentro de la linea que acabas de leer.

Solo tienes que ir leyendo lineas, contandolas y buscando en cada una de ellas la palabra. Luego escribes el numero de linea en el que la has encontrado.

Se bueno.

cz2002

  • Nuevo Miembro
  • *
  • Mensajes: 14
    • Ver Perfil
Re: Busqueda En Archivos
« Respuesta #2 en: Lunes 12 de Abril de 2004, 22:30 »
0
ok!!! gracias  ya mismo voy investigarlas!!

cz2002

  • Nuevo Miembro
  • *
  • Mensajes: 14
    • Ver Perfil
Re: Busqueda En Archivos
« Respuesta #3 en: Martes 13 de Abril de 2004, 06:26 »
0
tengo problemas para para pasar todo lo q haya en el archivo de texto a una variable para poder ser analizada y buscar la palabra en ella.... hice este código
probandolo con texto q no supere las 299 caracteres...

char *ar[300];
fichero = fopen("archivo.txt", "r");
........
......
while(!feof(fichero))
   {
   fputc(fgetc(fichero), stdout);
   i= i++;
   ar=(fichero);
   printf("%s",ar);
   }

logro abrir el archivo e imprimir lo q hay dentro en pantalla....
 o habra otra forma más fñacil de buscar dicha palabra directamente en el txt?? P

cz2002

  • Nuevo Miembro
  • *
  • Mensajes: 14
    • Ver Perfil
Re: Busqueda En Archivos
« Respuesta #4 en: Martes 13 de Abril de 2004, 23:07 »
0
ya lo logre!!

while(!feof(archivo)){
     fgets(linea, strlen(string)+(i), archivo);
     i++;
     puts(linea);
     int p;
     p = strlen(linea);
     printf("%d",p);

     char *h;

     h = strstr(linea,palabra);
}


aunque bastante desordenado... ya q lo tengo lo ordenare pero ya pude!!!

gracias!!