FindFirstFile和FindNextFile遍历文件夹API以及递归核心逻辑

[复制链接]
查看: 4258|回复: 31
发表于 2023-2-17 14:18:13 | 显示全部楼层 | 阅读模式
#include <stdio.h>
#include <Windows.h>
DWORD dwTotalFileNum;
DWORD EnumerateFileInDirectory(LPTSTR szPath){
        //FindFirstFile();
        //FindNextFile();
        //WIN32_FIND_DATA结构体


        WIN32_FIND_DATAA FindFileData;
        HANDLE handel;
        TCHAR szFilePath[MAX_PATH];
        TCHAR szFullPath[MAX_PATH];

        lstrcpy(szFilePath,szPath);
        lstrcat(szFilePath,TEXT("\\*"));//给传入的文件夹路径追加通配符

        handel=FindFirstFile(szFilePath,&FindFileData);
        if(handel==INVALID_HANDLE_VALUE){
                printf("读取错误");
                return 1;
        }else{
                do{
                        if(lstrcmp(FindFileData.cFileName,".")==0 || lstrcmp(FindFileData.cFileName,"..")==0){
                                continue;
                        }

                        wsprintf(szFullPath,"%s\\%s",szPath,FindFileData.cFileName); //构造文件全路径
                        dwTotalFileNum++;
                        printf("\n%d\t%s\t",dwTotalFileNum,szFullPath); //打印文件全路径

                        if(FindFileData.dwFileAttributes & FILE_ATTRIBUTE_DIRECTORY){//如果是文件夹就递归
                                printf("<IDR>");
                                EnumerateFileInDirectory(szFullPath);
                        }

                        //printf("文件名%s\t\t",FindFileData.cFileName);

                        //if(FindFileData.dwFileAttributes & FILE_ATTRIBUTE_ENCRYPTED){
                        //printf("<加密文件>");
                        //}
                        //if(FindFileData.dwFileAttributes & FILE_ATTRIBUTE_HIDDEN){
                        //printf("<隐藏文件>");
                        //}
                        
                }while(FindNextFile(handel,&FindFileData));
        }
        return 0;
}


int main(){
        

        EnumerateFileInDirectory(TEXT("C:\\Windows"));
        printf("\n");
        system("pause");
        return 0;
}


易博软件介绍
发表于 2023-2-18 15:26:02 | 显示全部楼层
努力也

0

主题

25

帖子

14

积分

营销入门

Rank: 2

积分
14
发表于 2023-2-19 10:31:47 | 显示全部楼层
真是:  贴  好贴  好的贴  一篇好贴  一篇极品贴  一篇挺好的贴  一篇非常好的贴  一篇让人叫好的贴  一篇非常不错的好贴  一篇地球中最好的好贴  一篇地球中绝世无双的贴

0

主题

14

帖子

8

积分

营销入门

Rank: 2

积分
8
发表于 2023-2-19 23:36:46 | 显示全部楼层
很不错的,值得深思!
发表于 2023-2-20 22:46:11 | 显示全部楼层
不错!
发表于 2023-2-21 13:55:35 | 显示全部楼层
我不是计算机系的,但是也想从事程序员之类的工作,今年找工作,遇到种种挫折,今天读到这篇文章,受益匪浅啊!非常感谢,值得深思!
发表于 2023-2-22 03:00:22 | 显示全部楼层
看完后除了感慨还是感慨啊谢谢楼主给我这么好的文章看我很受益中国的程序员都要努力啊~而且点明了我今后的目标真的很谢谢

0

主题

22

帖子

12

积分

营销入门

Rank: 2

积分
12
发表于 2023-2-25 10:32:11 | 显示全部楼层
不错,真的不错,很受感悟,让计算机执行更少的指令完成更多的工作,才是我所愿~

0

主题

12

帖子

7

积分

营销入门

Rank: 2

积分
7
发表于 2023-2-26 05:39:35 | 显示全部楼层
经历过的是最有价值的  能让它与别人分享更好

0

主题

9

帖子

5

积分

营销入门

Rank: 2

积分
5
发表于 2023-2-27 01:47:56 | 显示全部楼层
果然必读!!
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

1、请认真发帖,禁止回复纯表情,纯数字等无意义的内容!帖子内容不要太简单!
2、提倡文明上网,净化网络环境!抵制低俗不良违法有害信息。
3、如果你对主帖作者的帖子不屑一顾的话,请勿回帖。谢谢合作!
3、问答求助区发帖求助后,如有其他用户热心帮您解决问题后,请自觉点击设为最佳答案按钮。

 
 
QQ在线客服
QQ技术支持
工作时间:
8:00-18:00
软著登字:
1361266号
官方微信扫一扫
weixin

QQ|小黑屋|Archiver|慈众营销 ( 粤ICP备15049986号 )|网站地图

自动发帖软件 | 自动发帖器 | 营销推广软件 | 网络营销工具 | 网络营销软件 | 网站推广工具 | 网络推广软件 | 网络推广工具 | 网页推广软件 | 信息发布软件 | 网站推广工具 | 网页推广软件

Powered by Discuz! X3.4   © 2012-2020 Comsenz Inc.  慈众科技 - Collect from 深圳吉宝泰佛文化有限公司 公司地址:罗湖区黄贝街道深南东路集浩大厦A1403

返回顶部 返回列表