#include<iostream> #include<string> #include<io.h>
using namespace std;
void filesearch(string path,string mode) { struct _finddata_t filefind; if(path[path.size()-1]=='\\') path.resize(path.size()-1); string curr=path+"\\*.*"; int done=0,handle; if((handle=_findfirst(curr.c_str(),&filefind))==-1) return; while(!(done=_findnext(handle,&filefind))) { if(!strcmp(filefind.name,"..")) continue; curr=path+"\\"+filefind.name; if(strstr(filefind.name,mode.c_str())) { cout<<curr<<endl; } if (_A_SUBDIR==filefind.attrib) filesearch(curr,mode); } _findclose(handle); }
void main() { string path,mode; /*cout<<"请输入要搜的目录"<<endl; cin>>path; cout<<"请输出包含字符"<<endl; cin>>mode;*/ path="E:\\F\\IMG"; mode=".jpg"; filesearch(path,mode); getchar(); }
|