C ++:ブースト:ディレクトリナビゲーションロジックのヘルプが必要です

StackOverflow https://stackoverflow.com/questions/5932631

  •  30-10-2019
  •  | 
  •  

質問

そのため、ファイルを保存するためにディレクトリを変更してから、以前に入っていたディレクトリに戻しようとしています。

本質的に:

cd folder_name
<save file>
cd ../

これが私がこれまでに持っているコードです:

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);

}

現在、何が起こっているのかは、メソッドが呼び出されるたびに次のとおりです。
フォルダーは存在しません:作成されます
フォルダーは存在しません:作成されます

それはしていません cd ../ 部。 =(

したがって、私のディレクトリ構造は次のようになります:

フォルダ名
- フォルダ名
- フォルダ名
- - フォルダ名

正しい解決策はありません

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top