在boost文档中,我找到了列出目录文件和文件夹的代码(但不是递归地:(),但我不知道如何生成所有文件的列表,即使是那些文件中的文件也是如此。子目录(递归地)或所有文件夹的列表(递归地)。
答案 0 :(得分:1)
为了帮助您入门:
#include <boost/filesystem.hpp>
#include <boost/range/iterator_range.hpp>
namespace fs = boost::filesystem;
#include <iostream>
int main() {
for (auto& entry : boost::make_iterator_range(fs::recursive_directory_iterator("."), {}))
{
if (fs::is_regular_file(entry))
std::cout << entry.path() << "\n";
}
}
打印例如。
"./odata/marshal/json_light_test.cpp"
"./odata/marshal/core_test.cpp"
"./odata/marshal/json_verbose_test.cpp"
"./odata/edm/example_test.cpp"
"./odata/edm/builtin_test.cpp"
"./misc/naive_ptr_tests.cpp"
"./json/generic_visitor_tests.cpp"
"./json/json_tests.cpp"
"./azure/storage/test_service_definitions.hpp"
"./azure/storage/blob_tests.cpp"
"./azure/storage/table_tests.cpp"