std::experimental::filesystem::path:: extension
| 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 |
| Classes | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Functions | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| File types | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Member functions | ||||
| Path decomposition | ||||
| Non-member functions | ||||
|
path extension
(
)
const
;
|
(文件系统 TS) | |
返回路径 * this 的文件名部分的扩展名。
如果路径的
filename()
组件包含句点(
.
),且不是特殊文件系统元素
dot
或
dot-dot
,则
扩展名
是从最右侧句点开始(包括该句点)直至路径名结尾的子字符串。
若路径名为
.
或
..
,或当
filename()
不包含
.
字符时,则返回空路径。
对于向扩展名追加额外元素(如备用数据流或分区数据集名称)的文件系统,实现可能定义附加行为。
目录 |
参数
(无)
返回值
当前路径名的扩展名,若无扩展名则返回空路径。
异常
可能抛出实现定义的异常。
注释
此函数返回的扩展名包含一个句点,以便能够区分以句点结尾的文件(函数返回 "." )与没有扩展名的文件(函数返回 "" )。
对于任意路径
p
,
p.
stem
(
)
+
p.
extension
(
)
==
p.
filename
(
)
。
示例
#include <experimental/filesystem> #include <iostream> namespace fs = std::experimental::filesystem; int main() { std::cout << fs::path("/foo/bar.txt").extension() << '\n' << fs::path("/foo/bar.").extension() << '\n' << fs::path("/foo/bar").extension() << '\n' << fs::path("/foo/bar.txt/bar.cc").extension() << '\n' << fs::path("/foo/bar.txt/bar.").extension() << '\n' << fs::path("/foo/bar.txt/bar").extension() << '\n' << fs::path("/foo/.").extension() << '\n' << fs::path("/foo/..").extension() << '\n' << fs::path("/foo/.hidden").extension() << '\n'; }
输出:
".txt" "." "" ".cc" "." "" "" "" ".hidden"
参见
|
返回文件名路径组件
(公开成员函数) |
|
|
返回主干路径组件
(公开成员函数) |
|
|
替换扩展名
(公开成员函数) |
|
|
检查对应的路径元素是否非空
(公开成员函数) |