如何用readdir读取目录内容

如何用readdir读取目录内容

readdir 是一种用来获取目录内容的函数,在 C 语言中非常常用。以下是一个简易的例子,演示了如何运用 readdir 函数来读取目录内容:

#include <stdio.h> #include <stdlib.h> #include <dirent.h> #include <string.h>  int main() {     DIR *directory;     struct dirent *file_entry;      // 打开目录     directory = opendir("your_directory_path");     if (directory == NULL) {         perror("opendir");         return EXIT_FAILURE;     }      // 读取目录中的条目     while ((file_entry = readdir(directory)) != NULL) {         printf("%sn", file_entry->d_name);     }      // 关闭目录     closedir(directory);     return EXIT_SUCCESS; } </string.h></dirent.h></stdlib.h></stdio.h>

在此例子中,我们先引入了所需的头文件,接着利用 opendir 函数打开一个目录。如果操作成功,就可以获得一个 DIR 类型的指针,它代表了目录流。

随后,我们通过 readdir 函数逐一读取目录里的每个条目。readdir 返回的是一个指向 dirent 结构体的指针,该结构体里保存着有关目录条目的信息,例如文件名(d_name 字段)。我们会把这些文件名输出到屏幕。

最后,我们用 closedir 函数关闭目录流。

需要指出的是,本例中的目录路径是固定的。在真实的程序中,你可能得依据用户的输入或者其他因素来确定目录路径。

© 版权声明
THE END
喜欢就支持一下吧
点赞7 分享