<分区>
我只需要将一个目录中的所有文件(或文件名?)放入一个 vector 中,以便我可以对它们进行排序并按顺序打开它们。
自从我第一次接触 C++ 以来,我真的不知道该怎么做。我试过 boost::filesystem 但我没有成功,因为这对我来说很陌生。请帮忙!
我实际上找到了一种我认为可行的方法,但是我现在正在努力向命令行添加链接器,但我认为如果我在这里询问它,它会超出原始问题的范围。
<分区>
我只需要将一个目录中的所有文件(或文件名?)放入一个 vector 中,以便我可以对它们进行排序并按顺序打开它们。
自从我第一次接触 C++ 以来,我真的不知道该怎么做。我试过 boost::filesystem 但我没有成功,因为这对我来说很陌生。请帮忙!
我实际上找到了一种我认为可行的方法,但是我现在正在努力向命令行添加链接器,但我认为如果我在这里询问它,它会超出原始问题的范围。
最佳答案
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
。
关于C++如何将目录中的文件名放入 vector 中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20346234/