CFileFind::IsDirectory
呼叫此成員函式以判斷中找到的檔案是否為目錄。
BOOL IsDirectory( ) const;
傳回值
如果不是零,則成功,則為 0。
備註
為目錄中的檔案標記為文件屬性在 WIN32_FIND_DATA 結構所識別的 FILE_ATTRIBUTE_DIRECTORY。
您必須在呼叫之前 IsDirectory至少一次呼叫 FindNextFile 。
提供文件屬性的完整清單參閱成員函式 MatchesMask 。
範例
這種程式遞迴在 C:\磁碟機和列印的每個目錄的目錄名稱。
void Recurse(LPCTSTR pstr)
{
CFileFind finder;
// build a string with wildcards
CString strWildcard(pstr);
strWildcard += _T("\\*.*");
// start working for files
BOOL bWorking = finder.FindFile(strWildcard);
while (bWorking)
{
bWorking = finder.FindNextFile();
// skip . and .. files; otherwise, we'd
// recur infinitely!
if (finder.IsDots())
continue;
// if it's a directory, recursively search it
if (finder.IsDirectory())
{
CString str = finder.GetFilePath();
TRACE(_T("%s\n"), (LPCTSTR)str);
Recurse(str);
}
}
finder.Close();
}
void PrintDirs()
{
Recurse(_T("C:"));
}
需求
Header: afx.h