std::filesystem::path::replace_extension (3) - Linux Manuals
std::filesystem::path::replace_extension: std::filesystem::path::replace_extension
NAME
std::filesystem::path::replace_extension - std::filesystem::path::replace_extension
Synopsis
path& replace_extension( const path& replacement = path() ); (1) (since C++17)
Replaces the extension with replacement or removes it when the default value of replacement is used.
Firstly, if this path has an extension(), it is removed from the generic-format view of the pathname.
Then, a dot character is appended to the generic-format view of the pathname, if replacement is not empty or does not begin with a dot character.
Then replacement is appended as if by operator+=(replacement)
Parameters
replacement - the extension to replace with
Return value
*this
Exceptions
(none)
Notes
The type of replacement is std::filesystem::path even though it is not intended to represent an object on the file system in order to correctly account for the filesystem character encoding.
Example
// Run this code
Output:
See also
extension (public member function)
filename (public member function)
stem (public member function)
has_extension (public member function)