linux 在pictures目录下编程获取bmp文件名
时间: 2023-07-16 11:13:52 浏览: 49
你可以使用 Linux 中的 dirent.h 和 sys/types.h 库来实现获取目录中所有文件名的功能。以下是一个示例代码,可以获取指定目录下所有 BMP 格式的文件名:
```c
#include <dirent.h>
#include <stdio.h>
#include <string.h>
#include <sys/types.h>
int main() {
DIR* dir = opendir("pictures"); // 打开目录
if (dir == NULL) {
perror("Failed to open directory");
return -1;
}
struct dirent* entry;
while ((entry = readdir(dir)) != NULL) { // 遍历目录中的所有文件
if (entry->d_type == DT_REG) { // 如果是普通文件
char* name = entry->d_name;
if (strlen(name) > 4 && strcmp(name + strlen(name) - 4, ".bmp") == 0) { // 判断是否为 BMP 文件
printf("%s\n", name);
}
}
}
closedir(dir); // 关闭目录
return 0;
}
```
该代码会打印出所有 BMP 文件的文件名。你可以根据需要修改目录名称和文件格式来适应自己的需求。