CFileFind::MatchesMask 是 MFC 中的一个公共方法,用于检查文件名是否与指定的通配符模式匹配。该方法的原型如下:
BOOL MatchesMask(
   LPCTSTR lpszFileName
) const;

这个方法接受一个文件名作为参数,并返回一个布尔值。如果文件名与 CFileFind 对象中保存的通配符模式匹配,则返回 TRUE;否则返回 FALSE。

以下是一个简单的示例,演示如何使用 CFileFind::MatchesMask 方法:
#include <afx.h>

void CheckFileMatch(LPCTSTR lpszFileName, LPCTSTR lpszMask)
{
    CFileFind finder;
    
    // 设置通配符模式
    finder.FindFile(lpszMask);

    // 查找匹配的文件
    while (finder.FindNextFile())
    {
        // 检查当前文件是否匹配模式
        if (finder.MatchesMask(lpszFileName))
        {
            // 文件名匹配
            TRACE(_T("File '%s' matches the mask '%s'\n"), finder.GetFileName(), lpszMask);
        }
    }
    
    finder.Close();
}

int main()
{
    // 检查文件名是否匹配模式
    CheckFileMatch(_T("example.txt"), _T("*.txt"));

    return 0;
}

在这个示例中,CheckFileMatch 函数会检查给定的文件名是否与指定的通配符模式匹配。在主函数中,我们使用了 *.txt 作为通配符模式,然后检查 example.txt 是否匹配。根据匹配结果,会在输出中打印相应的信息。


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