WIN32_FIND_DATA结构体
typedef struct _WIN32_FIND_DATA
{
DWORD dwFileAttributes; //文件属性
FILETIME ftCreationTime; // 文件创建时间
FILETIME ftLastAccessTime; // 文件最后一次访问时间
FILETIME ftLastWriteTime; // 文件最后一次修改时间
DWORD nFileSizeHigh; // 文件长度高32位
DWORD nFileSizeLow; // 文件长度低32位
DWORD dwReserved0; // 系统保留
DWORD dwReserved1; // 系统保留
TCHAR cFileName[ MAX_PATH ]; // 长文件名(最多可达 255 个字符的长文件名),带句点和扩展名
TCHAR cAlternateFileName[ 14 ]; //8.3格式文件名(句点前最多有8个字符,而扩展名最多可以有3个字符)
} WIN32_FIND_DATA, *PWIN32_FIND_DATA;
实例
#include <stdio.h>
#include <windows.h>
void countFile(char* path)
{
WIN32_FIND_DATA findFileData;
HANDLE hFind;
//find first file or directory
hFind=FindFirstFile(path,&findFileData);
if(hFind==INVALID_HANDLE_VALUE)
{//there is no file or directory exists
printf("INVALID FILE HANDLE!\n");
}
else
{//there are files or directorys exists
//print file or directory name
printf("file:%s\n",findFileData.cFileName);
while(FindNextFile(hFind,&findFileData)==TRUE)
{//find files or directorys left
printf("file:%s\n",findFileData.cFileName);
}
FindClose(hFind);
}
}
int main(int argc,char* argv[])
{
countFile(".\\*.c");
getchar();
return 1;
}