code:
boost::filesystem::path config_folder(Config::CONFIG_FOLDER_NAME);
if( !(boost::filesystem::exists(config_folder)))
{
std::cout << "Network Config Directory not found...\n";
std::cout << "Creating folder called " << Config::CONFIG_FOLDER_NAME << "\n";
boost::filesystem::create_directory(config_folder);
}
if( !(boost::filesystem::exists(boost::format("%s/%s") % config_folder % Config::fmap[Config::current_hash_function]));
{
std::cout << "This hash has not been configure before...\n";
std::cout << "Creating folder called " << Config::fmap[Config::current_hash_function] << "\n";
boost::filesystem::create_directory(boost::format("%s/%s") % config_folder % Config::fmap[Config::current_hash_function]);
}
So, first, if the config folder doesn't exist, create that. (this part works) Next, check if the current_hash_function folder exists, if not.. create it. (this part doesn't work)
The error I'm getting;
src/neural_networks/shared.cpp:41: error: no matching function for call to ‘exists(boost::basic_format<char, std::char_traits<char>, std::allocator<char> >&)’
reason why I did the boost format in the fs:exists check, is because I don't how to create a path 2 levels deep
The /
operator is overloaded to concatenate path
objects. No need for explicit string formatting, and no need to worry about the platform-specific path-separator character, either.
if(!(boost::filesystem::exists(config_folder / Config::fmap[Config::current_hash_function]));
Either operand can be a std::string
as long as the other is a path
.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With