這篇文章主要介紹了C語言按關鍵字搜索文件夾中文件的方法,涉及C語言文件操作及字符串查找的相關技巧,具有一定參考借鑒價值,需要的朋友可以參考下
本文實例講述了C語言按關鍵字搜索文件夾中文件的方法。分享給大家供大家參考。具體實現方法如下:
方法1:
- #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;
- filesearch(path,mode);
- }
方法2:
- #include<stdio.h>
- #include<string.h>
- #include<dir.h>
- #define SIZE 12
- void find_creat_file(char *);
- int main(void)
- {
- char filename[SIZE];
- strcpy(filename,"filename");
- find_creat_file(filename);
- getch();
- return 0;
- }
- void find_creat_file(char *filename)
- {
- struct ffblk ffblk;
- int done;
- done=findfirst("d://filename",&ffblk,0);
- if(done==0)
- return 0;
- else
- mkdir("d://filename");
- }
希望本文所述對大家的C語言程序設計有所幫助。
新聞熱點
疑難解答