c语言

c语言怎么遍历文件夹中的文件名

小亿
193
2023-11-04 23:05:09
栏目: 编程语言

在C语言中,可以使用<dirent.h>头文件中的opendir()readdir()函数来遍历文件夹中的文件名。下面是一个简单的例子:

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

int main() {
    DIR *dir;
    struct dirent *ent;

    // 打开目录
    dir = opendir("path/to/directory");

    if (dir != NULL) {
        // 读取目录中的文件名
        while ((ent = readdir(dir)) != NULL) {
            // 排除当前目录和上级目录
            if (strcmp(ent->d_name, ".") != 0 && strcmp(ent->d_name, "..") != 0) {
                printf("%s\n", ent->d_name);
            }
        }
        closedir(dir);
    } else {
        // 目录打开失败
        perror("Unable to open directory");
        return 1;
    }

    return 0;
}

在上述代码中,首先使用opendir()打开指定的目录。然后使用readdir()函数来读取目录中的每个文件名。循环结束后,使用closedir()函数关闭目录。需要注意的是,读取到的文件名中会包含当前目录和上级目录的名称,所以在遍历时需要排除它们。

另外,这里使用了perror()函数来打印错误信息(如果目录打开失败)。你需要将"path/to/directory"替换为你想要遍历的目录路径。

0
看了该问题的人还看了