在C++中,你可以使用std::filesystem
库中的path
和exists
函数来验证路径是否存在,然后使用create_directory
函数来创建目录
#include <iostream>
#include <filesystem>
bool create_directory_if_not_exists(const std::string& path) {
// 检查路径是否存在
if (!std::filesystem::exists(path)) {
// 如果不存在,则创建目录
try {
std::filesystem::create_directory(path);
std::cout << "Directory created: " << path << std::endl;
return true;
} catch (const std::filesystem::filesystem_error& e) {
std::cerr << "Error creating directory: " << e.what() << std::endl;
return false;
}
} else {
std::cout << "Directory already exists: " << path << std::endl;
return true;
}
}
int main() {
std::string path = "test_directory";
create_directory_if_not_exists(path);
return 0;
}
在这个示例中,我们首先检查给定的路径是否存在。如果不存在,我们尝试使用create_directory
函数创建目录。如果创建成功,我们返回true
。如果在创建过程中发生错误,我们捕获filesystem_error
异常并返回false
。如果路径已经存在,我们返回true
。