在Windows平台下,可以使用C语言标准库中的dirent.h来遍历目录并获取文件名。不过,需要注意的是dirent.h主要用与linux系统,对于Windows,需要使用Windows API,如FindFirstFile、FindNextFile和FindClose,或者使用dirent.h的Windows版本。
windos做法参考上个文章,以下以linux下示例
C语言代码:
#include <stdio.h>
#include <dirent.h>
#include <string.h>
int main() {
DIR *d;
struct dirent *dir;
d = opendir("/home/test"); // 打开目录
if (d) {
while ((dir = readdir(d)) != NULL) { // 逐个读取目录项
// 检查文件后缀
if (strstr(dir->d_name, ".dat") || strstr(dir->d_name, ".len")) {
printf("%s\n", dir->d_name); // 打印文件名
}
}
closedir(d); // 关闭目录
}
return 0;
}
C++代码:
#include <iostream>
#include <string>
#include <dirent.h> // 包含目录操作的函数定义
using n