WIN32_FIND_DATA 过滤不是隐藏的文件
时间: 2024-10-19 15:06:45 浏览: 26
WIN32_FIND_DATA结构中的dwFileAttributes成员可以用来判断文件是否为隐藏文件。具体来说,如果dwFileAttributes与FILE_ATTRIBUTE_HIDDEN进行按位与操作(&)的结果非零,则该文件是隐藏文件;否则,该文件不是隐藏文件。
以下是一个示例代码,展示如何使用FindFirstFile和FindNextFile函数遍历目录并过滤掉隐藏文件:
```c
#include <windows.h>
#include <stdio.h>
int main() {
WIN32_FIND_DATA findFileData;
HANDLE hFind;
char directory[] = "C:\\example_directory\\*"; // 替换为你要遍历的目录
hFind = FindFirstFile(directory, &findFileData);
if (hFind == INVALID_HANDLE_VALUE) {
printf("Error in FindFirstFile
");
return 1;
}
do {
if (!(findFileData.dwFileAttributes & FILE_ATTRIBUTE_HIDDEN)) {
// 排除隐藏文件
printf("Found file: %s
", findFileData.cFileName);
}
} while (FindNextFile(hFind, &findFileData));
FindClose(hFind);
return 0;
}
```
阅读全文