[Linux C]列出指定目录下的所有文件(夹)

 在Linux下,用C语言实现列出指定目录下的所有文件和文件夹

#include <stdio.h>
#include <dirent.h>
#include <stdlib.h>

int main()
{
	DIR *dirp;
	struct dirent *direntp;
	dirp = opendir("/home/zcm/program/eclipse");
	if(dirp != NULL)
	{
		while(1)
		{
			direntp = readdir(dirp);
			if(direntp == NULL)
				break;
			else if(direntp->d_name[0] != '.')
				printf("%s\n", direntp->d_name);
		}
		closedir(dirp);
		return EXIT_SUCCESS;
	}

	return EXIT_FAILURE;
}

 

在上面的代码中,对以“.”开头的目录或文件名作了过滤,这样是为了不输出目录"."和".."以及“隐藏文件”。

你可能感兴趣的:([Linux C]列出指定目录下的所有文件(夹))