std::filesystem::path::replace_filename (3) - Linux Man Pages

std::filesystem::path::replace_filename: std::filesystem::path::replace_filename

NAME

std::filesystem::path::replace_filename - std::filesystem::path::replace_filename

Synopsis


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


Replaces a single filename component with replacement.
Equivalent to the following:


  remove_filename();
  operator/=(replacement);


The behavior is undefined if the path has no filename component (has_filename returns false).

Parameters


(none)

Return value


*this

Exceptions


(none)

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';
  }

Output:


  "/bar"
  "bar"

See also


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