Pregunta

Entonces, estoy tratando de cambiar mi directorio para guardar archivos, y luego cambiar al directorio en el que estaba anteriormente.

Esencialmente:

cd folder_name
<save file>
cd ../

Aquí está el código que tengo hasta ahora:

void save_to_folder(struct fann * network, const char * save_name)
{
    boost::filesystem::path config_folder(Config::CONFIG_FOLDER_NAME);
    boost::filesystem::path parent_folder("../");


    if( !(boost::filesystem::equivalent(config_folder, boost::filesystem::current_path())))
        {
            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);
            }
            boost::filesystem::current_path(config_folder);
        }

    fann_save(network, save_name);
    boost::filesystem::current_path(parent_folder);

}

Actualmente, lo que está sucediendo es esto cada vez que se llama el método:
La carpeta no existe: se crea
La carpeta no existe: se crea

No esta haciendo el cd ../ parte. = (

Entonces mi estructura de directorio se ve así:

nombre de la carpeta
- nombre de la carpeta
-- nombre de la carpeta
--- nombre de la carpeta

No hay solución correcta

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top