1 //查找文件
 2 HANDLE WINAPI FindFirstFile(
 3   __in          LPCTSTR lpFileName,//文件名或路径
 4   __out         LPWIN32_FIND_DATA lpFindFileData
 5 );
 6
 7 //查找下一个文件
 8 BOOL WINAPI FindNextFile(
 9   __in          HANDLE hFindFile,
10   __out         LPWIN32_FIND_DATA lpFindFileData
11 );
12
13 typedef struct _WIN32_FIND_DATA {
14       DWORD dwFileAttributes;  //文件属性
15       FILETIME ftCreationTime;  //创建时间
16       FILETIME ftLastAccessTime;  //最近访问时间
17       FILETIME ftLastWriteTime; //最近修改时间
18       DWORD nFileSizeHigh; //高位大小
19       DWORD nFileSizeLow;  //低位大小
20       DWORD dwReserved0;  //保留
21       DWORD dwReserved1;  //保留
22       TCHAR cFileName[MAX_PATH];//文件名,非全路径
23        TCHAR cAlternateFileName[14];
24 }WIN32_FIND_DATA,*PWIN32_FIND_DATA,*LPWIN32_FIND_DATA;

实例代码:

 1 void FindFiles(CString &strPath)
 2
 3 {
 4     WIN32_FIND_DATA findData;
 5
 6     CString strTemp = strPath;
 7     strTemp.Format(_T("%s\\*.*"), strPath);//查找指定目录下的直接的所有文件和目录
 8
 9     HANDLE hFile = FindFirstFile(strTemp, &findData);
10     while (hFile != INVALID_HANDLE_VALUE)
11     {
12         if (findData.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY)//如果是目录
13         {
14             if(findData.cFileName[0] != _T('.'))//排除.和..文件夹
15             {
16
17                 strTemp =  strPath+ CString("\\") + findData.cFileName;//获得完整路径
18                 FindFiles(strTemp);//递归查找当前目录的文件
19             }
20         }
21         else
22         {
23             strTemp =  strPath+ CString("\\") + findData.cFileName;
24         }
25
26         if(!FindNextFile(hFile, &findData))
27         {
28             break;
29         }
30     }
31
32 }

转载于:https://www.cnblogs.com/wind-net/archive/2012/11/09/2762350.html

Windows API——FindFirstFile——查找文件相关推荐

  1. Windows API 实现查找、删除任意类型的文件_VERSION20120605(vc6.0调试通过)(2012.6.5最新修改)

    1 // FileToolsV20120605.cpp : Defines the entry point for the application. 2 // 3 //用vc6.0建立一个win32简 ...

  2. Windows如何 cmd 查找文件路径 开机启动 CMD语音播放 CMD切换到管理员!

    1,语音播放: CreateObject("SAPI.SpVoice").Speak"崭新的开始,你好!" 单词别拼写错误啦! 把这个拖到开机启动项里就可以开后 ...

  3. c++利用windows api遍历指定文件夹及其子文件夹中的文件

    以下代码在vs2008中测试通过,利用FindFirstFile,FindNextFile函数遍历了我电脑上全路径为"C:\\Users\\v_tianboli\\Desktop\\wind ...

  4. windows命令行查找文件内容findstr

    一直用界面找文件,找内容却不方便,原来windows也有命令行,类似linux的grep,就是findstr. Findstr/S /I "soap init" *.h 在h文件中 ...

  5. Windows下批量查找文件

    1.新建record文件夹 2.进入record文件夹,新建res和des文件夹 3.把源文件列表放到res文件夹,文件平铺 4.在record文件夹下新建Excel: 第一列A放目标文件名 第二列B ...

  6. windows api打开文件对话框

    用windows api 写打开文件对话框主要使用OPENFILENAME ,GetOpenFileName, GetSaveFileName; 1.OPENFILENAME 结构体介绍:要使用Get ...

  7. win32 c语言检测文件是否存在,判断文件、目录是否存在:C、C++、Windows API、 boost...

    一.判断文件是否存在 #ifdef WIN32 #include //C (Windows) access #else #include //C (Linux) access #endif #incl ...

  8. 【C、C++、Windows API、 boost】多种方式判断文件、目录是否存在

    转载本文是为了实际之需要,方便查阅. 一.判断文件是否存在 #ifdef WIN32 #include <io.h> //C (Windows) access #else #include ...

  9. 如何使用Windows搜索在任何文件中搜索文本

    Many of us rely on Windows Search to find files and launch programs, but searching for text within f ...

最新文章

  1. Makefile写法入门心得
  2. Mybatis用法小结
  3. 求圆面积的python代码_《求》字意思读音、组词解释及笔画数 - 新华字典 - 911查询...
  4. leetcode 109 --- 有序链表变成二叉搜索树
  5. 科学家组建大数据平台解决科研资源共享难题
  6. 《Effective C#》读书笔记——条目23:理解接口方法和虚方法的区别使用C#表达设计...
  7. sysbench的框架实现介绍 1
  8. linux富文本软件,CherryTree(技术人员专用富文本笔记软件)
  9. 基于zk4500的指纹识别C#实现
  10. Python:try……excepted捕获方法
  11. win10系统崩溃(UNEXPECTED_STORE_EXCEPTION)解决方法
  12. 怎么读书才是善读书?
  13. java作品欣赏_[Java教程]推荐25个强大的 jQuery 网页布局设计作品欣赏
  14. AR平台:1.ARSDK介绍
  15. Arun Jaitley:要健康最好让银行保持增长势头
  16. NightWatchJS
  17. matlab用正弦做随机信号程序,(MATLAB辅助现代工程数字信号处理)第6章平稳随机信号处理与分析.ppt...
  18. 云服务器安装并配置nginx
  19. 学校网站建设需要把握的四个方面
  20. 上海市“专精特新”中小企业认定

热门文章

  1. leetcode —— 1013. 将数组分成和相等的三个部分
  2. 吴恩达深度学习 —— 2.18(选修)逻辑回归损失函数的解释
  3. 多元分类SVM(多类别SVM)程序使用说明
  4. Procrustes Analysis(普氏分析)
  5. HttpServletRequest说明
  6. python htmltestrunner报告_为什么python+htmltestrunner生成的测试报告有问题?
  7. 挑选出tensor中等于0的索引_Pytorch中的5个非常有用的张量操作
  8. 检测php常量是否存在,php判断变量常量是否存在
  9. x86系统MySQL_deepin20.1系统安装MySQL8.0.23(最美国产Liunx系统,最新,最详细的MySQL8安装教程)...
  10. loadrunner java_如何使用LoadRunner开发JAVA Vuser