Namespaces
Variants

std::experimental::filesystem::path:: stem

From cppreference.net
path stem ( ) const ;
(filesystem TS)
**翻訳結果:** HTMLタグ、属性、` `、`
`、``タグ内のテキスト、およびC++固有の用語は翻訳せず、元のフォーマットを保持しました。filesystem TSはC++の技術仕様を指すため、そのままにしています。

パスで識別されるファイル名から拡張子を取り除いたものを返します。

filename() の先頭から最後のピリオド文字( . )を含まない直前までの部分文字列を返します。

ファイル名が特殊ファイルシステムコンポーネントの dot または dot-dot である場合、またはピリオドを含まない場合、この関数は filename() 全体を返します。

目次

パラメータ

(なし)

戻り値

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

例外

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

#include <experimental/filesystem>
#include <iostream>
namespace fs = std::experimental::filesystem;
int main()
{
    std::cout << fs::path("/foo/bar.txt").stem() << '\n'
              << fs::path("/foo/.bar").stem() << '\n';
    for (fs::path p = "foo.bar.baz.tar"; !p.extension().empty(); p = p.stem())
        std::cout << p.extension() << '\n';
}

出力:

"bar"
""
".tar"
".baz"
".bar"

関連項目

ファイル名パスコンポーネントを返す
(公開メンバ関数)
ファイル拡張子パスコンポーネントを返す
(公開メンバ関数)