Namespaces
Variants
Views
Actions

std::experimental::filesystem::path::filename

From cppreference.com
< cpp‎ | experimental‎ | fs‎ | path
 
 
Experimental
Technical Specification
Filesystem library (filesystem TS)
Library fundamentals (library fundamentals TS)
Library fundamentals 2 (library fundamentals TS v2)
Library fundamentals 3 (library fundamentals TS v3)
Extensions for parallelism (parallelism TS)
Extensions for parallelism 2 (parallelism TS v2)
Extensions for concurrency (concurrency TS)
Extensions for concurrency 2 (concurrency TS v2)
Concepts (concepts TS)
Ranges (ranges TS)
Reflection (reflection TS)
Mathematical special functions (special functions TR)
Experimental Non-TS
Pattern Matching
Linear Algebra
std::execution
Contracts
2D Graphics
 
 
 
path filename() const;
(filesystem TS)

Returns the filename component of the path.

Equivalent to empty() ? path() : *--end().

Contents

[edit] Parameters

(none)

[edit] Return value

The filename identified by the path.

[edit] Exceptions

May throw implementation-defined exceptions.

[edit] Example

#include <experimental/filesystem>
#include <iostream>
namespace fs = std::experimental::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';
}

Output:

"bar.txt"
".bar"
"."
"."
".."
"."
".."
"/"

[edit] See also

returns the file extension path component
(public member function) [edit]
returns the stem path component
(public member function) [edit]
replaces the last path component with another path
(public member function) [edit]
checks if the corresponding path element is not empty
(public member function)