Skip to content

Latest commit

 

History

History
79 lines (59 loc) · 2.05 KB

file_status.md

File metadata and controls

79 lines (59 loc) · 2.05 KB

file_status

  • filesystem[meta header]
  • std::filesystem[meta namespace]
  • class[meta id-type]
  • cpp17[meta cpp]
namespace std::filesystem {
  class file_status;
}

概要

std::filesystem::file_statusは、ファイル状態を表すクラスである。

メンバ関数

構築・破棄

名前 説明 対応バージョン
(constructor) コンストラクタ C++17
~file_status(); デストラクタ C++17
file_status& operator=(const file_status&) noexcept = default;
file_status& operator=(file_status&&) noexcept = default;
代入演算子 C++17

変更・観測

名前 説明 対応バージョン
type ファイル種別を設定・取得する C++17
permissions ファイルの権限を設定・取得する C++17

比較演算子

名前 説明 対応バージョン
operator== 等値比較 C++20
friend bool operator!=(const file_status&, const file_status&); 非等値比較 (==により使用可能) C++20

#include <cassert>
#include <filesystem>
#include <fstream>

namespace fs = std::filesystem;

int main()
{
  std::ofstream{"a.txt"};

  fs::file_status status = fs::status("a.txt");

  assert(status.type() == fs::file_type::regular);
  assert((status.permissions() & fs::perms::owner_write) == fs::perms::owner_write);
}
  • fs::file_status[color ff0000]
  • fs::status[link status.md]
  • status.type()[link file_status/type.md]
  • status.permissions()[link file_status/permissions.md]
  • fs::file_type[link file_type.md]
  • fs::perms[link perms.md]

出力

バージョン

言語

  • C++17

処理系