|
简介:
根据文件名查找文件。该函数到一个文件夹(包括子文件夹)去搜索指定文件,如果要使用附加属性去搜索文件的话 可以使用FindFirstFileEx函数。
声明:
- HANDLE FindFirstFile(
- LPCTSTR lpFileName,
- LPWIN32_FIND_DATA lpFindFileData
- );
复制代码
参数:
lpFileName:要搜索的文件名,支持通配符:
C:\Windows\*.* //在C:\Windows目录中查找所有文件;
C:\Windows\System32\*.dll //在 C:\Windows\System32 目录中查找所有dll类型的文件;
C:\Windows\System.ini //在 C:\Windows 目录中查找 System.ini 文件;
C:\Windows\a???.* //在 C:\Windows 目录中查找所有以a开头的文件名长度为4个字符的文件;
Test.dat //在当前目录查找 Test.dat 文件
*.* //在当前目录查找所有文件
lpFindFileData:WIN32_FIND_DATA 类型,该结构用于装载与找到的文件有关的信息。该结构可用于后续的遍历与搜索。
结构 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]; //长文件名
- TCHAR cAlternateFileName[14]; //8.3格式文件名
- } WIN32_FIND_DATA, *PWIN32_FIND_DATA;
复制代码
在使用这个结构时不能手工修改这个结构中的任何数据,结构对于开发人员来说只能作为一个只读数据,其所有的成员变量都会由系统完成填写。
返回值:
如果函数成功,返回一个 HANDLE 类型的文件搜索句柄,搜索/遍历完成后,应用 FindClose 函数关闭这个句柄;
如果函数失败,返回值为 INVALID_HANDLE_VALUE。 要获得更多的错误信息,请调用GetLastError。 |
上一篇: 第10课 文件指针及目录的创建与删除 | 课后作业下一篇: FindNextFile 函数说明
|