C++17 filesystem文件系統
開啟C++17的支持
項目屬性->C/C++->語言->C++語言標准設置為:ISO C++17 標准 (/std:c++17)
頭文件及命名空間
#include<filesystem>
using namespace std::filesystem
常用類
path類:路徑處理
directory_entry類:文件入口
directory_iterator類:獲取文件系統目錄中文件的迭代器容器
file_status類:用於獲取和修改文件(或目錄)的屬性
path類
| 函數名 | 功能 |
|---|---|
| path& append(const _Src& source) | 在path末尾加入一層結構 |
| path& assign(string_type& source) | 賦值(字符串) |
| void clear() | 清空 |
| int compare(const path& other) | 進行比較 |
| bool empty() | 空判斷 |
| path filename() | 返回文件名(有后綴) |
| path stem() | 返回文件名(不含后綴) |
| path extension() | 返回文件后綴名 |
| path is_absolute() | 判斷是否為絕對路徑 |
| path is_relative() | 判斷是否為相對路徑 |
| path relative_path() | 返回相對路徑 |
| path parent_path() | 返回父路徑 |
| path& replace_extension(const path& replace) | 替換文件后綴 |
常用函數
std::filesystem::exists(const path& pval):用於判斷path是否存在
std::filesystem::copy(const path& from, const path& to):目錄復制
std::filesystem::absolute(const path& pval, const path& base = current_path()):獲取相對於base的絕對路徑
std::filesystem::create_directory(const path& pval):當目錄不存在時創建目錄
std::filesystem::create_directories(const path& pval):形如/a/b/c這樣的,如果都不存在,創建目錄結構
std::filesystem::file_size(const path& pval):返回目錄的大小
