C语言按关键字搜索文件夹中文件的方法
本文实例讲述了C语言按关键字搜索文件夹中文件的方法。分享给大家供大家参考。具体实现方法如下:
方法1:
#include<iostream> #include<string> #include<io.h> usingnamespacestd; voidfilesearch(stringpath,stringmode) { struct_finddata_tfilefind; if(path[path.size()-1]=='\\') path.resize(path.size()-1); stringcurr=path+"\\*.*"; intdone=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); } voidmain() { stringpath,mode; cout<<"请输入要搜的目录"<<endl; cin>>path; cout<<"请输出包含字符"<<endl; cin>>mode; filesearch(path,mode); }
方法2:
#include<stdio.h> #include<string.h> #include<dir.h> #defineSIZE12 voidfind_creat_file(char*); intmain(void) { charfilename[SIZE]; strcpy(filename,"filename"); find_creat_file(filename); getch(); return0; } voidfind_creat_file(char*filename) { structffblkffblk; intdone; done=findfirst("d:\\filename",&ffblk,0); if(done==0) return0; else mkdir("d:\\filename"); }
希望本文所述对大家的C语言程序设计有所帮助。