Condividi tramite


CFileFind::IsDirectory

Chiamare la funzione membro per determinare se il file è presente una directory.

BOOL IsDirectory( ) const;

Valore restituito

Diverso da zero se ha esito positivo; in caso contrario 0.

Note

Un file che è una directory è contrassegnato con FILE_ATTRIBUTE_DIRECTORY che un attributo di file ha identificato nella struttura WIN32_FIND_DATA.

È necessario chiamare almeno una volta FindNextFile prima di chiamare IsDirectory.

Vedere la funzione membro MatchesMask per un elenco completo degli attributi di file.

Esempio

Recurses di questo programma per ogni directory nell'unità e le stampe C:\ del nome della directory.

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:"));
}

Requisiti

Header: afx.h

Vedere anche

Riferimenti

Classe di CFileFind

Grafico della gerarchia