C++如何将目录中的文件名放入向量中
C++ How to put the names of files within a directory into a vector?
我只需要将目录中的所有文件(或文件名?)放入一个向量中,这样我就可以对它们进行排序并按顺序打开它们。
自从我第一次接触C++以来,我真的不知道该怎么做。我尝试过boost::文件系统,但没有成功,因为这对我来说很陌生。请帮忙!
事实上,我已经找到了一个我认为可以工作的方法,但我现在很难在命令行中添加链接器,但我认为如果我在这里问这个问题,它将超出最初问题的范围。
namespace fs = boost::filesystem;
fs::directory_iterator b("path of directory"), e;
std::vector<fs::path> paths(b, e);
这包括子目录(但不包括其内容)。如果要排除子目录,可以在路径上使用fs::is_directory
来检查它是否为目录。如果要包含子目录的内容,则可以使用recursive_directory_iterator
而不是directory_iterator
。
摘自您之前的问题:
std::vector<std::string> filenames;
dpdf = opendir("/data/files");
if (dpdf != NULL) {
while (epdf = readdir(dpdf)) {
filenames.push_back(std::string(epdf->d_name));
}
}
相关文章:
- 从命令行c++发送文本文件名
- 写入向量<向量<bool>>
- 函数向量_指针有不同的原型,我可以构建一个吗
- std::向量与传递值的动态数组
- 将值指定给向量(2D)的向量中的某个位置
- 找不到成员对象:没有名为get_event()的成员,也处理多态性和向量
- 如何使用向量的template_back函数
- 尝试通过多个向量访问变量时,向量下标超出范围
- 如何在OMNET++中指定与命令行参数组合的输出文件名
- 如何通过派生类函数更改基类中的向量
- C++从另一个类访问公共静态向量的正确方法是什么
- 如何将ampl中的集合表示为c++中的向量
- 变量没有改变?通过向量的函数调用
- 迭代时从向量和内存中删除对象
- 向量 <int> a {N, 0} 和 int arr a[N] = {0} 的时间复杂度有什么区别
- 如何为模板化对象创建模板向量?VS正在投掷C3203
- 如何在目录及其子文件夹中构建文件名字符串向量?
- C++如何将目录中的文件名放入向量中
- 如何从填充.txt文件名的向量中选取随机元素C++
- 如何从文件名向量中删除隐藏文件