Namespaces
Variants

std::filesystem::path:: filename

From cppreference.net
path filename ( ) const ;
(C++17以降)

パスの汎用フォーマットのファイル名コンポーネントを返します。

relative_path ( ) . empty ( ) ? path ( ) : *-- end ( ) と同等です。

目次

パラメータ

(なし)

戻り値

パスによって識別されるファイル名。

例外

実装定義の例外をスローする可能性があります。

#include <filesystem>
#include <iostream>
namespace fs = std::filesystem;
int main()
{
    std::cout << fs::path("/foo/bar.txt").filename() << '\n'
              << fs::path("/foo/.bar").filename() << '\n'
              << fs::path("/foo/bar/").filename() << '\n'
              << fs::path("/foo/.").filename() << '\n'
              << fs::path("/foo/..").filename() << '\n'
              << fs::path(".").filename() << '\n'
              << fs::path("..").filename() << '\n'
              << fs::path("/").filename() << '\n'
              << fs::path("//host").filename() << '\n';
}

出力:

"bar.txt"
".bar"
""
"."
".."
"."
".."
""
"host"

関連項目

ファイル拡張子パスコンポーネントを返す
(公開メンバ関数)
ステムパスコンポーネントを返す(最終拡張子を除いたファイル名)
(公開メンバ関数)
最後のパスコンポーネントを別のパスで置き換える
(公開メンバ関数)
対応するパス要素が空でないかチェックする
(公開メンバ関数)