溫馨提示×

c語言怎么獲取文件夾下的所有文件名

小億
730
2023-11-16 18:44:45
欄目: 編程語言

在C語言中,可以使用dirent.h頭文件中的DIRdirent結(jié)構(gòu)體以及readdir函數(shù)來獲取文件夾下的所有文件名。下面是一個簡單的示例代碼:

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

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

    // 打開文件夾
    dir = opendir("folder_path");

    if (dir == NULL) {
        printf("無法打開文件夾\n");
        return 1;
    }

    // 讀取文件夾中的文件
    while ((ent = readdir(dir)) != NULL) {
        // 過濾掉當(dāng)前文件夾(.)和上級文件夾(..)的記錄
        if (strcmp(ent->d_name, ".") == 0 || strcmp(ent->d_name, "..") == 0) {
            continue;
        }

        printf("%s\n", ent->d_name);
    }

    // 關(guān)閉文件夾
    closedir(dir);

    return 0;
}

在代碼中,folder_path需要替換為實際文件夾的路徑。opendir函數(shù)用于打開文件夾,返回一個指向DIR類型的指針。readdir函數(shù)用于讀取文件夾中的文件,返回一個指向dirent結(jié)構(gòu)體的指針,其中包含文件名等信息。通過循環(huán)遍歷使用readdir函數(shù)獲取的文件信息,可以獲取到文件夾下的所有文件名。最后,使用closedir函數(shù)關(guān)閉文件夾。

0