5

ディレクトリへのパスがあり、C++ を使用してそのディレクトリの名前を取得したいと考えていますstd::filesystem。たとえば、パスが次の場合:

std::filesystem::path fake_path("C:\\fake\\path\\to\\my_directory\\");

「my_directory」を取得したいと思います。

私はこの回答を見て、最初は で機能したものが で機能してboost::filesystemいないと想定していましたがstd::filesystem、それは正しくない可能性があります。boost::filesystemいずれにせよ、ファイルで終わるパスについて具体的に尋ねているため、これが重複しているとは思いません。

文字列の取得または取得、セパレーターでの分割など、他にもいくつかの解決策を考えることができますがfake_path.end() - 2、どれも以前ほど単純ではありfake_path.filename()ません。

.filename()ファイルのパスを呼び出すのとほぼ同等の、ディレクトリのパスの最後の部分を取得するクリーンな方法はありますか?

4

1 に答える 1