TNB Library
|
ファイル読み込みクラス [詳解]
#include <TnbFile.h>
公開型 | |
enum | EMode { READ , CREATE , ACCESS , WRITE } |
オープンモード [詳解] | |
enum | ESeekMode { TOP = FILE_BEGIN , CURRENT = FILE_CURRENT , END = FILE_END } |
シークのオフセット指定モード [詳解] | |
公開メンバ関数 | |
virtual bool | CanRead (void) const |
[確認] 読み込み可能か [詳解] | |
bool | CanWrite (void) const |
[確認] 書込み可能か [詳解] | |
CFileReader (void) | |
コンストラクタ [詳解] | |
virtual void | Close (void) |
[操作] クローズ [詳解] | |
virtual HANDLE | GetHandle (void) const |
[取得] ファイルハンドル取得 [詳解] | |
bool | GetInformation (LPBY_HANDLE_FILE_INFORMATION _lpFileInformation) const |
[取得] ファイル情報取得 [詳解] | |
LONGLONG | GetLeftoverSize (void) const |
[取得] 残りサイズ取得. [詳解] | |
virtual LPCTSTR | GetOpenName (void) const |
[取得] オープン名取得 [詳解] | |
virtual void | GetRaw (size_t size, LPVOID _P) const |
[取得] 取得. [詳解] | |
virtual LONGLONG | GetSize (void) const |
[取得] ファイルサイズ取得 [詳解] | |
bool | Open (LPCTSTR lpszName, bool boIsShare=true, bool boDummy=false) |
[操作] オープン [詳解] | |
bool | OpenOnMode (LPCTSTR lpszName, EMode eMode=ACCESS, bool isShare=true) |
[操作] モード付オープン [詳解] | |
operator HANDLE (void) const | |
[取得] ファイルハンドル取得 [詳解] | |
template<typename T > | |
const IDeserializer & | operator>> (T &_t) const |
[取得] 取得. [詳解] | |
virtual size_t | Read (size_t size, LPVOID _P) const |
[取得] ファイル読み込み [詳解] | |
void | ReadExactly (size_t size, LPVOID _P) const |
[取得] 読み込み. [詳解] | |
CByteVector | ReadExactly (size_t size=0) const |
[取得] 読み込み [詳解] | |
size_t | ReadInto (ICollectionT< BYTE > &_out, size_t size=0, size_t oneBlockSize=4096) const |
[取得] 読み込み. [詳解] | |
CByteVector | ReadInto (size_t size=0) const |
[取得] 読み込み [詳解] | |
virtual LONGLONG | Seek (LONGLONG llOffset, ESeekMode eSeek=TOP) const |
[操作] シーク. [詳解] | |
void | SetCreatedAttributes (DWORD attr) |
[設定] 属性設定. [詳解] | |
静的公開メンバ関数 | |
static bool | ReadAll (CByteVector &_content, LPCTSTR lpszFileName, CFileReader &fr=CFileReader()) |
[取得] ファイル全読み込み. [詳解] | |
限定公開メンバ関数 | |
virtual void | SetHandle (HANDLE h) |
[設定] ファイルハンドル設定 [詳解] | |
ファイル読み込みクラス
|
inherited |
|
inherited |
シークのオフセット指定モード
列挙値 | |
---|---|
TOP | 頭からのオフセット指定 |
CURRENT | 現在位置からのオフセット指定 |
END | 末からのオフセット指定 |
TnbReader.h の 38 行目に定義があります。
CFileReader | ( | void | ) |
|
virtual |
|
virtualinherited |
|
inherited |
[取得] ファイル情報取得
[out] | _lpFileInformation | 取得情報の格納場所 |
true | 取得成功 |
false | 失敗 |
|
inherited |
|
virtual |
|
virtualinherited |
[取得] 取得.
指定データを取得します。
[in] | size | 取得するデータサイズ(単位BYTE) |
[out] | _P | 取得するデータ |
CTnbException | 失敗時は、任意のスローの可能性があります。 |
IDeserializerを実装しています。
TnbReader.h の 211 行目に定義があります。
|
virtual |
bool Open | ( | LPCTSTR | lpszName, |
bool | boIsShare = true , |
||
bool | boDummy = false |
||
) |
[操作] モード付オープン
lpszName | オープンするファイル名。 |
eMode | オープンモード。省略なら access になります。 |
isShare | 省略かtrueなら、共有モードでオープンします。 |
true | オープン成功 |
false | オープン失敗 ( GetLastError() により詳細取得可能) |
|
inherited |
[取得] 取得.
指定データをデシリアライズして取得します。
[out] | _t | データ |
CNotSupportException | デシリアライズをサポートしていない型が指定されると、スローされます。 |
CTnbException | 失敗時は、任意のスローの可能性があります。 |
TnbSerializer.h の 277 行目に定義があります。
|
virtual |
[取得] ファイル読み込み
[in] | size | 読み込みサイズ。 |
[out] | _P | 読み込みアドレス。 size 分書き込める領域である必要が有ります。 |
CReadFailureException | 読み込みに失敗すると、スローされます。 |
IReaderを実装しています。
|
static |
|
inherited |
[取得] 読み込み.
[in] | size | 読み込みサイズ。 |
[out] | _P | 読み込みアドレス。 size 分書き込める領域である必要が有ります。 |
CReadFailureException | 読み込みに失敗すると、スローされます。 |
CShortOfDataException | 指定サイズ読込めないと、スローされます。 |
TnbReader.h の 114 行目に定義があります。
|
inherited |
[取得] 読み込み
size | 読み込みサイズ。0ならファイル最後まで読み込む。 |
CReadFailureException | 読み込みに失敗すると、スローされます。 |
CShortOfDataException | 指定サイズ読込めないと、スローされます。 |
TnbReader.h の 134 行目に定義があります。
|
inherited |
[取得] 読み込み.
[out] | _out | 読込先。クリアせず、後ろに追加します。 |
size | 読み込みサイズ。省略か0ならファイル最後まで読み込む。 | |
oneBlockSize | 一度に読み込むサイズ。省略なら4K。 |
CReadFailureException | 読み込みに失敗すると、スローされます。 |
TnbReader.h の 178 行目に定義があります。
|
inherited |
[取得] 読み込み
size | 読み込みサイズ。0ならファイル最後まで読み込む。 |
CReadFailureException | 読み込みに失敗すると、スローされます。 |
TnbReader.h の 150 行目に定義があります。
[操作] シーク.
ファイルポインタを移動します。
llOffset | ファイルポインタの移動数。 |
eSeek | 移動開始ファイルポインタ位置。省略すると TOP になります。 |
0以上 | シーク成功。数値は、現在のファイルポインタ |
マイナス | シーク失敗 ( GetLastError() により詳細取得可能) |
IReaderを実装しています。
|
inherited |