TNB Library
|
ファイル書き込みクラス [詳解]
#include <TnbFile.h>
公開型 | |
enum | EMode { READ , CREATE , ACCESS , WRITE } |
オープンモード [詳解] | |
enum | ESeekMode { TOP = FILE_BEGIN , CURRENT = FILE_CURRENT , END = FILE_END } |
シークのオフセット指定モード [詳解] | |
公開メンバ関数 | |
virtual void | AddRaw (size_t size, LPCVOID P) |
[追加] 追加. [詳解] | |
virtual bool | CanRead (void) const |
[確認] 読み込み可能か [詳解] | |
virtual bool | CanWrite (void) const |
[確認] 書込み可能か [詳解] | |
CFileWriter (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 | New (LPCTSTR lpszName, bool boIsShare=true) |
[操作] 新規オープン. [詳解] | |
bool | Open (LPCTSTR lpszName, bool boIsShare=true, bool boIsBottom=true) |
[操作] オープン. [詳解] | |
bool | OpenOnMode (LPCTSTR lpszName, EMode eMode=ACCESS, bool isShare=true) |
[操作] モード付オープン [詳解] | |
operator HANDLE (void) const | |
[取得] ファイルハンドル取得 [詳解] | |
template<typename T > | |
ISerializer & | operator<< (const T &t) |
[追加] 追加. [詳解] | |
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) |
[設定] 属性設定. [詳解] | |
virtual void | SetEnd (void) |
[設定] EOFを指定. [詳解] | |
void | SetTime (const CFileTimeEx &timeCreation, const CFileTimeEx &timeLastAccess, const CFileTimeEx &timeLastWrite) |
[設定] ファイル日付設定 [詳解] | |
virtual void | Write (size_t size, LPCVOID P) |
[保存] ファイル書き込み [詳解] | |
void | WriteFrom (const IConstCollectionT< BYTE > &c) |
[保存] 書き込み. [詳解] | |
void | WriteFrom (const IReader &reader, size_t size=0, size_t oneBlockSize=4096) |
[保存] 書き込み. [詳解] | |
静的公開メンバ関数 | |
static bool | AddFile (LPCTSTR lpszFileName, size_t size, LPCVOID P, CFileWriter &fw=CFileWriter()) |
[保存] ファイル追加. [詳解] | |
static bool | NewFile (LPCTSTR lpszFileName, size_t size, LPCVOID P, CFileWriter &fw=CFileWriter()) |
[保存] ファイル作成. [詳解] | |
限定公開メンバ関数 | |
virtual void | SetHandle (HANDLE h) |
[設定] ファイルハンドル設定 [詳解] | |
ファイル書き込みクラス
|
inherited |
|
inherited |
シークのオフセット指定モード
列挙値 | |
---|---|
TOP | 頭からのオフセット指定 |
CURRENT | 現在位置からのオフセット指定 |
END | 末からのオフセット指定 |
TnbReader.h の 38 行目に定義があります。
CFileWriter | ( | void | ) |
|
static |
|
virtualinherited |
[追加] 追加.
指定データを追加します。
size | 追加するデータサイズ(単位BYTE) |
P | 追加するデータ |
CTnbException | 失敗時は、任意のスローの可能性があります。 |
ISerializerを実装しています。
TnbWriter.h の 115 行目に定義があります。
|
virtual |
|
virtual |
|
virtualinherited |
|
inherited |
[取得] ファイル情報取得
[out] | _lpFileInformation | 取得情報の格納場所 |
true | 取得成功 |
false | 失敗 |
|
inherited |
|
virtual |
|
virtualinherited |
[取得] 取得.
指定データを取得します。
[in] | size | 取得するデータサイズ(単位BYTE) |
[out] | _P | 取得するデータ |
CTnbException | 失敗時は、任意のスローの可能性があります。 |
IDeserializerを実装しています。
TnbReader.h の 211 行目に定義があります。
|
virtual |
bool New | ( | LPCTSTR | lpszName, |
bool | boIsShare = true |
||
) |
|
static |
bool Open | ( | LPCTSTR | lpszName, |
bool | boIsShare = true , |
||
bool | boIsBottom = true |
||
) |
[操作] モード付オープン
lpszName | オープンするファイル名。 |
eMode | オープンモード。省略なら access になります。 |
isShare | 省略かtrueなら、共有モードでオープンします。 |
true | オープン成功 |
false | オープン失敗 ( GetLastError() により詳細取得可能) |
|
inherited |
[追加] 追加.
指定データをシリアライズして追加します。
t | データ |
CNotSupportException | シリアライズをサポートしていない型が指定されると、スローされます。 |
CTnbException | 失敗時は、任意のスローの可能性があります。 |
TnbSerializer.h の 161 行目に定義があります。
|
inherited |
[取得] 取得.
指定データをデシリアライズして取得します。
[out] | _t | データ |
CNotSupportException | デシリアライズをサポートしていない型が指定されると、スローされます。 |
CTnbException | 失敗時は、任意のスローの可能性があります。 |
TnbSerializer.h の 277 行目に定義があります。
|
virtual |
[取得] ファイル読み込み
[in] | size | 読み込みサイズ。 |
[out] | _P | 読み込みアドレス。 size 分書き込める領域である必要が有ります。 |
CReadFailureException | 読み込みに失敗すると、スローされます。 |
IReaderを実装しています。
|
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 |
|
virtual |
|
protectedvirtualinherited |
void SetTime | ( | const CFileTimeEx & | timeCreation, |
const CFileTimeEx & | timeLastAccess, | ||
const CFileTimeEx & | timeLastWrite | ||
) |
[設定] ファイル日付設定
timeCreation | 作成日付 |
timeLastAccess | 最終アクセス日付 |
timeLastWrite | 書込み日付 |
CWriteFailureException | コンストラクタ throw を有効にしていて、書込みに失敗すると、スローされます。 |
|
virtual |
[保存] ファイル書き込み
size | 書き込みサイズ。 |
P | 書き込みデータ。 |
CWriteFailureException | 書込みに失敗すると、スローされます。size が大き過ぎてもエラーになります。 |
IWriterを実装しています。
|
inherited |
[保存] 書き込み.
c | 書き込みデータ。 |
CWriteFailureException | 書込みに失敗すると、スローされます。 |
TnbWriter.h の 65 行目に定義があります。
|
inherited |
[保存] 書き込み.
reader | 書き込みデータ 。 |
size | 読み込みサイズ。省略か0ならファイル最後まで読み込む。 |
oneBlockSize | 一度に読み込むサイズ。省略なら4K。 |
CReadFailureException | 読み込みに失敗すると、スローされます。 |
CWriteFailureException | 書込みに失敗すると、スローされます。 |
TnbWriter.h の 85 行目に定義があります。