C++ std::filesystem 提取目录下全部的pcd文件名(C++17以上)
#include <filesystem>
static void Get_All_PCD_File(const std::string &pcd_dir, std::vector<std::string> &file_paths)
{
file_paths.clear();
if(std::filesystem::exists(pcd_dir) && std::filesystem::is_directory(pcd_dir)){
try{
for(const auto& entry : std::filesystem::directory_iterator(pcd_dir)){
if(std::filesystem::is_regular_file(entry.path())){
if(entry.path().extension() !=".pcd" && entry.path().extension() !=".PCD"){
continue;
}
file_paths.push_back(entry.path().string());
}
}
}catch(const std::filesystem::filesystem_error& e) {
std::cerr << "Filesystem error: " << e.what() << std::endl;
return;
}
}else{
printf("Err: path is not exist!\n");
return;
}
return;
}
评论已关闭