|
こんにちは。
>指定したディレクトリ内のファイル数を得るにはどのようにしたら良いですか。
非標準ですが、opendirでディレクトリをopenすると、
readdirでディレクトリ内のファイル名を調べることができますので、
ファイルの個数を数えてください。
#include <dirent.h>
#include <stdio.h>
#include <stdlib.h>
int main(int argc,char *argv[])
{
DIR *dir;
struct dirent *ent;
int count = 0;
if (argc != 2) {
printf("ディレクトリ名を指定してください\n");
exit(1);
}
if ((dir = opendir(argv[1])) == NULL) {
perror("ディレクトリが開けません");
exit(1);
}
while ((ent = readdir(dir)) != NULL) {
printf("%s\n",ent->d_name);
count++;
}
printf("\nディレクトリ内のファイル数:%d\n", count);
closedir(dir);
return (0);
}
|