Autor
|
Tema: Buscar palabra dentro de un archivo (Leído 13,899 veces)
|
Riki_89D
Desconectado
Mensajes: 851
BCN CITY
|
Hola que tal?¿ miren intento buscar una palabra dentro de un archivo leido previamente con ReadFile,una vez guardado ene l Buffer,con un bucle FOR leo byte a byte asta que encuentro la palabra primera de lo que quiero buscar pero despues nose como hacer para leer los demas bytes...:S osea tengo algo asin: char Buffer[1000]; /*archivo leido*/ char Palabra[5] = "Mundo"; for(int i = 0; i < SizeFile; i++) { if(Buffer[i] == Palabra[0]) /*Cuando encuentre la M*/ /*I AKI NSE K HACER :s*/ } }
imaghino que deberia ir guardando byte a byte en otro buffer o nse no se me ocurre nada :S:S saludos
|
|
|
En línea
|
|
|
|
MIG80
Desconectado
Mensajes: 38
|
if(Buffer[i] == Palabra[0]) /*Cuando encuentre la M*/ /*I AKI NSE K HACER :s*/
Pues yo creo que si sabes ... comparas las letras que faltan Saludos
|
|
« Última modificación: 7 Agosto 2010, 21:11 pm por czealt »
|
En línea
|
|
|
|
Riki_89D
Desconectado
Mensajes: 851
BCN CITY
|
Hola gracias por responder,eso ya lo se que hay que comparar pero yo me refiero a comoseria la sintaxis,
con mas if?¿
es que el objetivo de esto es que el usuario ponga una palbra de X letras i despues claro i despues comparar tantas lñetras tenga la palabra a buscar,para comparar strcmp() no me sirve no?¿
|
|
|
En línea
|
|
|
|
MIG80
Desconectado
Mensajes: 38
|
Estuviste cerca, cerca.. las siguientes comparaciones puedes hacerlas con algun bucle pero tambien podrias usar la funcion strncmp() Saludos
|
|
|
En línea
|
|
|
|
Riki_89D
Desconectado
Mensajes: 851
BCN CITY
|
mm hacer otro bucle for con una variable de tipo int que contenga cuantas letras tenga la palabra i conese segundo bucle pues recorrer i comparar,no?¿
|
|
|
En línea
|
|
|
|
MIG80
Desconectado
Mensajes: 38
|
mm hacer otro bucle for con una variable de tipo int que contenga cuantas letras tenga la palabra i conese segundo bucle pues recorrer i comparar,no?¿
si claro, con eso yo creo que funciona intentalo asi. Saludos.
|
|
|
En línea
|
|
|
|
|
Riki_89D
Desconectado
Mensajes: 851
BCN CITY
|
bueno tengo esto: int inc = 0; char Resultado[10]; for(int i = 0; i < 255; i++) { if(Frase[i] == Palabra[inc]) { for(int b = 0; b < sizeof(Palabra); b++) { Resultado[b] = Frase[i]; } } }
Pero nada en Resultado alfinal keda la misma letra todo el rato:S sera por k en el segundo bucle la I no se incrementa i por eso se repite la misma letra pero probe con esto: Resultado = Frase[ì++];
pero nada
|
|
« Última modificación: 8 Agosto 2010, 17:36 pm por Riki_89D »
|
En línea
|
|
|
|
bizco
Desconectado
Mensajes: 698
|
si lo quieres buscar asi, un puntero apunta a la cadena a buscar (puntero1), otro apunta al caracter N del buffer (puntero2).
si el caracter al que apunta puntero1 es igual que el que apunta puntero2 incrementas ambos, si antes de llegar al tope uno no es igual al otro (la palabra es distinta) puntero1 tiene que apuntar ora vez a la palabra a buscar.
|
|
|
En línea
|
|
|
|
MIG80
Desconectado
Mensajes: 38
|
bueno tengo esto: int inc = 0; char Resultado[10]; for(int i = 0; i < 255; i++) { if(Frase[i] == Palabra[inc]) { for(int b = 0; b < sizeof(Palabra); b++) { Resultado[b] = Frase[i]; } } }
Pero nada en Resultado alfinal keda la misma letra todo el rato:S sera por k en el segundo bucle la I no se incrementa i por eso se repite la misma letra pero probe con esto: Resultado = Frase[ì++];
pero nada
mmm me parece que de veras no sabes que hacer... creo que la siguiente función hace lo que buscas (y sino al menos te guiará un poco ) int buscarpalabra(const char *Palabra,const char *Frase) /* Busca el string 'Palabra' en el string 'Frase'. Retorna 1 si lo encuentra, 0 en caso contrario */ { const int lon_frase =strlen(Frase ),lon_palabra =strlen(Palabra ); // 'const int' porque su contenido no variara int encontrado=0; for(int i=0;i<lon_frase && !encontrado;i++) { if(Frase[i]==Palabra[0]) { encontrado=1; for(int b=1;b<lon_palabra && encontrado;b++) { if(Frase[i+b]!=Palabra[b]) encontrado=0; } } } return encontrado; }
Saludos
|
|
« Última modificación: 8 Agosto 2010, 22:05 pm por czealt »
|
En línea
|
|
|
|
|
Mensajes similares |
|
Asunto |
Iniciado por |
Respuestas |
Vistas |
Último mensaje |
|
|
Buscar caracter dentro de un string y evitar recorte de palabra
Programación Visual Basic
|
fx700
|
0
|
2,818
|
28 Octubre 2011, 23:39 pm
por fx700
|
|
|
como buscar palabra en un archivo de txt
Programación C/C++
|
AprendizPRG
|
1
|
12,189
|
17 Junio 2012, 14:54 pm
por 0xDani
|
|
|
Buscar una palabra dentro de un string
Programación C/C++
|
kur79
|
3
|
16,876
|
18 Febrero 2019, 19:48 pm
por Loretz
|
|
|
mostrar posicion dentro de un vector la palabra a buscar dentro de un archivo
Programación C/C++
|
@krao
|
3
|
3,155
|
7 Mayo 2018, 16:42 pm
por MAFUS
|
|
|
Buscar una palabra dentro de un string (PHP / Buscador)
Desarrollo Web
|
Leguim
|
2
|
2,370
|
17 Febrero 2019, 14:52 pm
por Leguim
|
|