AM Daemon ライブラリリファレンス
File.h
[詳解]
1 /// @file
2 /// @brief ファイル操作処理を提供する静的クラス File のヘッダ。
3 ///
4 /// Copyright(C)SEGA
5 
6 #ifndef AMDAEMON_UTIL_FILE_H
7 #define AMDAEMON_UTIL_FILE_H
8 
9 #include "amdaemon/env.h"
10 
11 #include <string>
12 #include <fstream>
13 #include <cstdint>
14 
15 namespace amdaemon
16 {
17 namespace util
18 {
19  /// ファイル操作処理を提供する静的クラス。
20  class File
21  {
22  public:
23  /// @brief ファイルが存在するか否かを取得する。
24  /// @param[in] path ファイルパス。
25  /// @retval true 存在する場合。
26  /// @retval false 存在しないか、ファイルではない場合。
27  /// @see Path::existsFile
28  ///
29  /// Path::existsFile を呼び出す。
30  static bool exists(const std::wstring& path);
31 
32  /// @brief ファイルサイズを取得する。
33  /// @param[in] path ファイルパス。
34  /// @return ファイルサイズ。ファイルが存在しない場合は -1 。
35  static std::int64_t getSize(const std::wstring& path);
36 
37  /// @brief ファイルを読み取り用に開く。
38  /// @param[in] path ファイルパス。
39  /// @param[in] mode オープンモード。
40  /// @return ストリーム。開けなかった場合はエラービットが立っている。
41  static std::ifstream openRead(
42  const std::wstring& path,
43  std::ios_base::openmode mode = std::ios_base::in);
44 
45  /// @brief ファイルを読み取り用に開く。
46  /// @param[in] path ファイルパス。
47  /// @param[in] mode オープンモード。
48  /// @return ストリーム。開けなかった場合はエラービットが立っている。
49  static std::wifstream openReadWide(
50  const std::wstring& path,
51  std::ios_base::openmode mode = std::ios_base::in);
52 
53  /// @brief ファイルを書き出し用に開く。
54  /// @param[in] path ファイルパス。
55  /// @param[in] mode オープンモード。
56  /// @return ストリーム。開けなかった場合はエラービットが立っている。
57  static std::ofstream openWrite(
58  const std::wstring& path,
59  std::ios_base::openmode mode = std::ios_base::out);
60 
61  /// @brief ファイルを書き出し用に開く。
62  /// @param[in] path ファイルパス。
63  /// @param[in] mode オープンモード。
64  /// @return ストリーム。開けなかった場合はエラービットが立っている。
65  static std::wofstream openWriteWide(
66  const std::wstring& path,
67  std::ios_base::openmode mode = std::ios_base::out);
68 
69  private:
70  // インスタンス化禁止
71  File(); // 宣言のみ
72  File(const File&); // 宣言のみ
73  File& operator=(const File&); // 宣言のみ
74  };
75 } // namespace util
76 } // namespace amdaemon
77 
78 #endif // AMDAEMON_UTIL_FILE_H
static std::ifstream openRead(const std::wstring &path, std::ios_base::openmode mode=std::ios_base::in)
ファイルを読み取り用に開く。
static std::wifstream openReadWide(const std::wstring &path, std::ios_base::openmode mode=std::ios_base::in)
ファイルを読み取り用に開く。
Daemonライブラリの環境定義を行うヘッダ。
AM Daemon ライブラリクラス群の基底名前空間。
Definition: Log.h:13
static std::ofstream openWrite(const std::wstring &path, std::ios_base::openmode mode=std::ios_base::out)
ファイルを書き出し用に開く。
static std::wofstream openWriteWide(const std::wstring &path, std::ios_base::openmode mode=std::ios_base::out)
ファイルを書き出し用に開く。
static bool exists(const std::wstring &path)
ファイルが存在するか否かを取得する。
ファイル操作処理を提供する静的クラス。
Definition: File.h:20
static std::int64_t getSize(const std::wstring &path)
ファイルサイズを取得する。