# std::filesystem::path::replace_filename

From cppreference.com
< cpp‎ | filesystem‎ | path

path& replace_filename( const path& replacement ); |  | (since C++17)

Replaces a single filename component with `replacement`.

Equivalent to: remove_filename(); return operator/=(replacement);.

### Parameters

replacement | - | `path` used for replacing the filename component

### Return value

*this

### Exceptions

May throw implementation-defined exceptions.

### Example

Run this code

    #include <iostream>
    #include <filesystem>
    namespace fs = std::filesystem;

    int main()
    {
        std::cout << fs::path("/foo").replace_filename("bar") << '\n'
                  << fs::path("/").replace_filename("bar") << '\n'
                  << fs::path("").replace_filename("pub") << '\n';
    }

Output:

    "/bar"
    "/bar"
    "pub"

### See also

replace_extension | replaces the extension (public member function)
filename | returns the filename path component (public member function)
remove_filename | removes filename path component (public member function)
has_filename | checks if the corresponding path element is not empty (public member function)

Retrieved from "https://en.cppreference.com/mwiki/index.php?title=cpp/filesystem/path/replace_filename&oldid=136609"