PDA

Visualizza la versione completa : [C] Contare le cartelle


minoz
11-01-2005, 19:36
Ho ancora problemi! Come faccio a contare le sottocartelle di una cartella?

Possibilmente senza utilizzare system("DIR ecc...");

:)

DYNAM!C+
11-01-2005, 22:32
lo faccio qua al volo (senza correggere)




#include <windows.h>


int countDirs( char* szBaseDir )
{
int dirs = 0;
HANDLE _hFind;
WIN32_FIND_DATA __win32_data;



if ( (_hFind = FindFirstFile( szBaseDir, &__win32_data )) != INVALID_HANDLE_VALUE )
{
while( 1 )
{
if ( GetFileAttributes( __win32_data.cFileName ) & FILE_ATTRIBUTE_DIRECTORY )
dirs++;

if ( !FindNextFile( _hFind, &__win32_data) )
break;
}

FindClose( _hFind );
}

return dirs;
}

DYNAM!C+
11-01-2005, 22:34
non ho guardato bene,
forse conta anche le cartelle ".." e "."

ciao.
č x win32

minoz
11-01-2005, 23:42
Grazie, va benissimo!

:D

Non esiste perņ un metodo che restituisca direttamente il numero e non sia iterativo?

DYNAM!C+
11-01-2005, 23:44
Originariamente inviato da minoz
Grazie, va benissimo!

:D

Non esiste perņ un metodo che restituisca direttamente il numero e non sia iterativo?


non mi risulta.

minoz
12-01-2005, 00:08
Ok grazie! Ho paura che tra poco mi avro' ancora bisogno! :rollo:

Loading