std::experimental::filesystem::path::replace_extension

来自cppreference.com
< cpp‎ | experimental‎ | fs‎ | path
 
 
实验性
技术规范
文件系统库 (文件系统 TS)
库基础 (库基础 TS)
库基础 2 (库基础 TS v2)
库基础 3 (库基础 TS v3)
并行扩展 (并行 TS)
并行扩展 2 (并行 TS v2)
并发扩展 (并发 TS)
并发扩展 2 (并发 TS v2)
概念 (概念 TS)
范围 (范围 TS)
反射 (反射 TS)
数学特殊函数 (特殊函数 TR)
实验性非 TS 功能特性
模式匹配
线性代数
std::execution
契约
2D 图形
 
 
 
path& replace_extension( const path& replacement = path() );
(1) (文件系统 TS)

replacement 替换扩展名,或当使用 replacement 的默认值时则将之移除。

首先,如果此路径具有 extension(),则将之移除。

然后,如果 replacement 不为空或不以点字符开头,则追加点字符。

然后将 replacement 追加给路径。

参数

replacement - 要替换的扩展名

返回值

*this

异常

可能会抛出由实现定义的异常。

示例

#include <experimental/filesystem>
#include <iostream>
namespace fs = std::experimental::filesystem;
 
int main()
{
    fs::path p = "/foo/bar.jpeg";
    std::cout << "Was: " << p << '\n';
    p.replace_extension(".jpg");
    std::cout << "Now: " << p << '\n';
}

输出:

Was: "/foo/bar.jpeg"
Now: "/foo/bar.jpg"

参阅

返回文件扩展名路径组分
(公开成员函数)
返回文件名路径组分
(公开成员函数)
返回主干路径组分
(公开成员函数)
检查对应路径元素是否非空
(公开成员函数)