MFC中枚举文件和文件夹
MFC中枚举文件或文件夹关键是使用了两个API函数: ::FindFirstFile()和::FindNextFile()。调用这两个函数时都会填写一个数据结构:
WIN32_FIND_DATA。
当调用::FindFirstFile()失败后,返回INVALID_HANDLE_VALUE;
当调用::FindNextFile()失败后,返回NULL;
WIN32_FIND_DATA结构定义如下:
为了测试当前结构中是文件还是文件夹,可以用dwFileAttributes与标签FILE_ATTRIBUTE_DIRECTORY来测试,如:
下面是枚举当前文件夹下面所有的文件并把它们的名字在MessageBox表示出来:
枚举当前文件夹下面所有的文件夹并把它们的名字在MessageBox表示出来:只是对上面的代码做了一点改变:
更有趣是枚举当前文件夹下面所有的子文件夹及子文件夹中的文件夹,:)是用递归来实现的。如: