c++获取文件夹下所有文件
时间: 2023-09-09 12:10:02 浏览: 118
在C语言中,获取文件夹下所有文件需要使用操作系统提供的API函数。以下是一个示例代码,使用了Windows API来获取文件夹下所有文件的文件名:
```c
#include <stdio.h>
#include <windows.h>
int main()
{
WIN32_FIND_DATA FindFileData;
HANDLE hFind;
char folderPath[MAX_PATH] = "C:\\test\\"; //要遍历的文件夹路径
char fileName[MAX_PATH];
// 构造文件搜索路径
sprintf(fileName, "%s*", folderPath);
// 开始搜索
hFind = FindFirstFile(fileName, &FindFileData);
if (hFind == INVALID_HANDLE_VALUE)
{
printf("查找文件失败\n");
return 1;
}
// 遍历文件夹内所有文件
do
{
// 如果是文件夹,跳过
if (FindFileData.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY)
continue;
// 输出文件名
printf("%s\n", FindFileData.cFileName);
} while (FindNextFile(hFind, &FindFileData));
// 关闭搜索句柄
FindClose(hFind);
return 0;
}
```
在上面的代码中,我们使用了`FindFirstFile`和`FindNextFile`函数来遍历文件夹内所有文件,如果遇到文件夹则跳过,只输出文件名。需要注意的是,在使用这些函数前,要先包含`windows.h`头文件。
阅读全文