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

前端技术 2023/09/09 C++

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

#include <windows.h>
#include <stdio.h>
#include <string.h>
#define LEN 1024
// 深度优先递归遍历目录中所有的文件
BOOL DirectoryList(LPCSTR Path)
{
 WIN32_FIND_DATA FindData;
 HANDLE hError;
 int FileCount = 0;
 char FilePathName[LEN];
 // 构造路径
 char FullPathName[LEN];
 strcpy(FilePathName, Path);
 strcat(FilePathName, \"\\\\*.*\");
 hError = FindFirstFile(FilePathName, &FindData);
 if (hError == INVALID_HANDLE_VALUE)
 {
 printf(\"搜索失败!\");
 return 0;
 }
 while(::FindNextFile(hError, &FindData))
 {
 // 过虑.和..
 if (strcmp(FindData.cFileName, \".\") == 0 
  || strcmp(FindData.cFileName, \"..\") == 0 )
 {
  continue;
 }
 // 构造完整路径
 wsprintf(FullPathName, \"%s\\\\%s\", Path,FindData.cFileName);
 FileCount++;
 // 输出本级的文件
 printf(\"\\n%d %s \", FileCount, FullPathName);
 
 if (FindData.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY)
 {
  printf(\"<Dir>\");
  DirectoryList(FullPathName);
 }
 }
 return 0;
}
void main()
{
 DirectoryList(\"D:eclipse-J2EE\");
}

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

本文地址:https://www.stayed.cn/item/25035

转载请注明出处。

本站部分内容来源于网络,如侵犯到您的权益,请 联系我

我的博客

人生若只如初见,何事秋风悲画扇。