c++ 提升如果 .extension() == " "这意味着这个文件是一个文件夹?

c++ Boost if .extension() == "" this would mean this file is a folder?

本文关键字:一个 文件夹 文件 如果 c++ 意味着 extension      更新时间:2023-10-16

我只想确认这将是一个很好的方法,允许我只在文件夹上工作,因为我可以看到一种只查找文件夹而不是文件和文件夹的方法。

boost::filesystem::directory_iterator iterator(string("."));
for (; iterator != boost::filesystem::directory_iterator(); ++iterator)
{
if ((iterator->path().extension()) == "") { 
cout << (iterator->path().stem()) <<   endl; 
};
}

文件可以在没有任何扩展名的情况下存在,因此这不起作用。

看看boost::filesystem::is_directory.


顺便说一下,Boost.Filesystem 库被合并到 C++17 标准中。因此,如果您的编译器支持 C++17,请考虑使用标准库进行文件系统操作。

相关文章: