Con esta funcion podremos buscar una palabra en un archivo de texto,espero y le
sea de utilidad a alguien.
#include <windows.h>
#include <iostream>
#include <fstream>
using namespace std;
int Text(char *palabra,char color){
switch(color){case 'V':
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),
FOREGROUND_GREEN);cout<<palabra<<endl; break;
case 'R':SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),
FOREGROUND_RED);cout<<palabra<<endl;break;
default: cout<<"El valor ingresado no es valido"<<endl;}}
//##################FindString#########################
int FindString(char *archivo,char *palabra){
char dat[1000];
ifstream arch; arch.open(archivo);if(!arch){
cout<<"ERROR AL ABRIR EL ARCHIVO"<<endl;}
else{while(!arch.eof()&&arch.getline(dat,1000)){
if(strstr(dat,palabra)==NULL){Text(dat,'R');
}else{Text(dat,'V');}}}}
int main(){
FindString("c:\\archivo.cpp","long");
cin.get();
return 0;
}
La o las lineas donde se encuentre la palabra que buscan estaran marcadas con
color verde, y el resto con color rojo,culquier duda me avisan, saludos.