- 论坛徽章:
- 0
|
如何统计一个目录下有多少文件???
int List(char *pcPath)
{
DIR *pstDir;
int i,j;
struct dirent *pLink;
struct stat stStat;
char caFile[256];
pstDir = opendir(pcPath);
if (pstDir == NULL)
{
fprintf(stderr, "find dir [%s] failed!\n", pcPath);
return( -1 );
}
i = 0;
j = 0;
while ((pLink = readdir(pstDir)) != NULL)
{
bzero(&stStat, sizeof(stStat));
bzero(caFile, sizeof(caFile));
sprintf(caFile, "%s/%s", pcPath, pLink->;d_name);
stat(caFile, &stStat);
if (S_ISDIR(stStat.st_mode) == 0)
{
fprintf(stdout, "[No.%4d]-文件[%s]\n", ++i, pLink->;d_name);
}
else
{
fprintf(stdout, "[No.%4d]-目录[%s]\n", ++j, pLink->;d_name);
}
}
closedir(pstDir);
return( 0 );
} |
|