c++ boost 判断路径是否存在 不存在就创建目录
时间: 2023-10-04 15:07:12 浏览: 341
可以使用Boost库中的`create_directory()`函数来创建目录。如果目录已经存在,则该函数不会做任何操作。
以下是一个示例代码,可以使用Boost库中的`exists()`函数和`create_directory()`函数判断指定的路径是否存在,如果不存在则创建目录:
```c++
#include <boost/filesystem.hpp>
bool is_path_exist(const std::string& path)
{
boost::filesystem::path p(path);
return boost::filesystem::exists(p);
}
bool create_directory_if_not_exist(const std::string& path)
{
if (!is_path_exist(path))
{
return boost::filesystem::create_directory(path);
}
else
{
return true;
}
}
```
在上面的代码中,`create_directory_if_not_exist()`函数会首先调用`is_path_exist()`函数来检查指定的路径是否存在。如果路径不存在,则调用`create_directory()`函数来创建目录。如果创建成功,则返回`true`,否则返回`false`。
需要注意的是,使用Boost库需要先安装Boost库并在编译时链接相应的库文件。
阅读全文