CFileFind 类是 MFC(Microsoft Foundation Classes)中用于文件查找的类之一。它提供了一组用于在文件系统中查找文件和目录的功能。

CFileFind 类的公共构造函数是CFileFind::CFileFind。这个构造函数用于创建一个CFileFind 类的实例,以便后续在文件系统中执行文件查找操作。

下面是一个简单的示例,演示如何使用CFileFind 类来查找指定目录下的文件:
#include <afx.h>

void FindFilesInDirectory(const CString& directory)
{
    CFileFind finder;

    // 构造函数初始化,设置初始查找路径
    BOOL bWorking = finder.FindFile(directory + _T("\\*.*"));

    while (bWorking)
    {
        bWorking = finder.FindNextFile();  // 查找下一个文件

        if (finder.IsDots())
            continue; // 忽略 "." 和 ".."

        if (finder.IsDirectory())
        {
            // 处理子目录
            // finder.GetFileName() 可以获取当前找到的目录名
            // 递归调用 FindFilesInDirectory() 可以继续在子目录中查找文件
            // ...
        }
        else
        {
            // 处理文件
            // finder.GetFileName() 可以获取当前找到的文件名
            // ...
        }
    }

    finder.Close(); // 关闭文件查找
}

在上面的示例中,CFileFind 对象通过调用FindFile 方法初始化,并指定了要查找的目录。然后,通过循环调用FindNextFile 方法,可以逐个获取目录下的文件和子目录的信息。根据 IsDirectory() 方法的返回值,可以判断当前项是文件还是目录,并进行相应的处理。




转载请注明出处:http://www.pingtaimeng.com/article/detail/17776/MFC/CFileFind