首页 > 编程 > C++ > 正文

C语言按关键字搜索文件夹中文件的方法

2020-05-23 14:18:00
字体:
来源:转载
供稿:网友

这篇文章主要介绍了C语言按关键字搜索文件夹中文件的方法,涉及C语言文件操作及字符串查找的相关技巧,具有一定参考借鉴价值,需要的朋友可以参考下

本文实例讲述了C语言按关键字搜索文件夹中文件的方法。分享给大家供大家参考。具体实现方法如下:

方法1:

 

 
  1. #include<iostream> 
  2. #include<string> 
  3. #include<io.h> 
  4. using namespace std; 
  5. void filesearch(string path,string mode) 
  6. struct _finddata_t filefind; 
  7. if(path[path.size()-1]=='//'
  8. path.resize(path.size()-1); 
  9. string curr=path+"//*.*"
  10. int done=0,handle; 
  11. if((handle=_findfirst(curr.c_str(),&filefind))==-1) 
  12. return
  13. while(!(done=_findnext(handle,&filefind))) 
  14. if(!strcmp(filefind.name,"..")) 
  15. continue
  16. curr=path+"//"+filefind.name; 
  17. if(strstr(filefind.name,mode.c_str())) 
  18. cout<<curr<<endl; 
  19. if (_A_SUBDIR==filefind.attrib) 
  20. filesearch(curr,mode); 
  21. }  
  22. _findclose(handle);  
  23. void main() 
  24. string path,mode; 
  25. cout<<"请输入要搜的目录"<<endl; 
  26. cin>>path; 
  27. cout<<"请输出包含字符"<<endl; 
  28. cin>>mode; 
  29. filesearch(path,mode); 

方法2:

 

 
  1. #include<stdio.h> 
  2. #include<string.h> 
  3. #include<dir.h> 
  4. #define SIZE 12 
  5. void find_creat_file(char *); 
  6. int main(void
  7. char filename[SIZE]; 
  8. strcpy(filename,"filename"); 
  9. find_creat_file(filename); 
  10. getch(); 
  11. return 0; 
  12. void find_creat_file(char *filename) 
  13. struct ffblk ffblk; 
  14. int done; 
  15. done=findfirst("d://filename",&ffblk,0); 
  16. if(done==0) 
  17. return 0; 
  18. else 
  19. mkdir("d://filename"); 

希望本文所述对大家的C语言程序设计有所帮助。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表