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

C++遍历文件夹下文件的方法

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

这篇文章主要介绍了C++遍历文件夹下文件的方法,实例分析了C++针对文件夹遍历的相关技巧,具有一定参考借鉴价值,需要的朋友可以参考下

本文实例讲述了C++遍历文件夹下文件的方法。分享给大家供大家参考。具体如下:

 

 
  1. #include <windows.h> 
  2. #include <stdio.h> 
  3. #include <string.h> 
  4. #define LEN 1024 
  5. // 深度优先递归遍历目录中所有的文件 
  6. BOOL DirectoryList(LPCSTR Path) 
  7. WIN32_FIND_DATA FindData; 
  8. HANDLE hError; 
  9. int FileCount = 0; 
  10. char FilePathName[LEN]; 
  11. // 构造路径 
  12. char FullPathName[LEN]; 
  13. strcpy(FilePathName, Path); 
  14. strcat(FilePathName, "//*.*"); 
  15. hError = FindFirstFile(FilePathName, &FindData); 
  16. if (hError == INVALID_HANDLE_VALUE) 
  17. printf("搜索失败!"); 
  18. return 0; 
  19. while(::FindNextFile(hError, &FindData)) 
  20. // 过虑.和.. 
  21. if (strcmp(FindData.cFileName, ".") == 0  
  22. || strcmp(FindData.cFileName, "..") == 0 ) 
  23. continue
  24. // 构造完整路径 
  25. wsprintf(FullPathName, "%s//%s", Path,FindData.cFileName); 
  26. FileCount++; 
  27. // 输出本级的文件 
  28. printf("/n%d %s ", FileCount, FullPathName); 
  29.  
  30. if (FindData.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY) 
  31. printf("<Dir>"); 
  32. DirectoryList(FullPathName); 
  33. return 0; 
  34. void main() 
  35. DirectoryList("D:eclipse-J2EE"); 

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

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