打开目录函数
打开目录使用的函数:
#include <sys/types.h>
#include <dirent.h>)
//头文件如上
DIR *opendir(const char *name); //打开函数
int readdir(unsigned int fd, struct old_linux_dirent *dirp,
unsigned int count); //读取函数
dirent的结构体内容如下:
struct old_linux_dirent {
long d_ino; /* inode number */
off_t d_off; /* offset to this old_linux_dirent */
unsigned short d_reclen; /* length of this d_name */
char d_name[NAME_MAX+1]; /* filename (null-terminated) */
}
示例:打开当前目录,并打印出当前目录下的所有文件
#include<stdio.h>
#include<unistd.h>
#include<dirent.h>
int main()
{
struct dirent* pdirent = NULL;
DIR * pdir = opendir(".");//显示当前目录下的文件
while ((pdirent = readdir(pdir)) != NULL)
{
//这个if用来不显示隐藏文件.和..
if (pdirent->d_name[0] == '.')
continue;
printf("%s ", pdirent->d_name);
}
printf("\n");
closedir(pdir);
}
本文介绍了如何在Linux环境下使用C语言的dirent结构体和相关函数来打开并读取目录,包括打开目录的函数用法及示例,展示了遍历当前目录下所有文件的方法。
2016

被折叠的 条评论
为什么被折叠?



