FTPファイル読み込みクラス
[詳解]
#include <TnbFtpFile.h>
FTPファイル読み込みクラス
- 必要ファイル
- TnbFtpFile.h
- 日付
- 07/01/15 新規
TnbFtpFile.h の 259 行目に定義があります。
◆ ESeekMode
シークのオフセット指定モード
列挙値 |
---|
TOP | 頭からのオフセット指定
|
CURRENT | 現在位置からのオフセット指定
|
END | 末からのオフセット指定
|
TnbReader.h の 38 行目に定義があります。
◆ CanRead()
virtual bool CanRead |
( |
void |
| ) |
const |
|
virtual |
◆ Close()
◆ GetLeftoverSize()
LONGLONG GetLeftoverSize |
( |
void |
| ) |
const |
|
inherited |
[取得] 残りサイズ取得.
現在の位置から最後までのサイズを返します。
- 戻り値
-
TnbReader.h の 95 行目に定義があります。
◆ GetOpenName()
LPCTSTR GetOpenName |
( |
void |
| ) |
const |
|
virtual |
◆ GetRaw()
virtual void GetRaw |
( |
size_t |
size, |
|
|
LPVOID |
_P |
|
) |
| const |
|
virtualinherited |
◆ GetSize()
LONGLONG GetSize |
( |
void |
| ) |
const |
|
virtual |
◆ Open()
bool Open |
( |
CFtpSession & |
sec, |
|
|
LPCTSTR |
lpszFileName, |
|
|
DWORD |
dwFlags = FTP_TRANSFER_TYPE_BINARY , |
|
|
DWORD_PTR |
dwContext = 0 |
|
) |
| |
[設定] ファイルオープン.
FTPセッションのFileNameで指定されたファイルをオープンする。
- 引数
-
sec | オープンしたセッションハンドル。 |
lpszFileName | オープンするファイルの名前。 |
dwFlags | ファイル転送の種別を表すフラグ。省略すると FTP_TRANSFER_TYPE_BINARY 。
まず以下のいずれかを指定する。
FTP_TRANSFER_TYPE_ASCII ASCII転送。
FTP_TRANSFER_TYPE_BINARY バイナリ転送。
次に、以下の任意の組み合わせを論理和によって指定する。
INTERNET_FLAG_HYPERLINK 再読み込みすべきかどうかの判断時に有効期限・最終更新時刻がサーバから返されない場合強制的に再読み込みする。
INTERNET_FLAG_MAKE_PERSISTENT キャッシュに永続的要素として追加する。これにより、通常のキャッシュのクリーンアップ、整合性チェック、ごみは行きなどの際にこの要素が削除されない。
INTERNET_FLAG_RELOAD 要求したファイル、オブジェクト、ディレクトリリストをキャッシュから取得するのでなく、強制的にサーバから再読み込みする。
INTERNET_FLAG_RESYNCHRONIZE FTPリソースをサーバから再読み込みする。
INTERNET_FLAG_NEED_FILE ファイルがキャッシュできない場合に一時ファイルを作成する。 |
dwContext | コールバックに渡すアプリケーション定義の値。省略可能。 |
- 戻り値
-
TnbFtpFile.h の 386 行目に定義があります。
◆ operator>>()
◆ Read()
virtual size_t Read |
( |
size_t |
size, |
|
|
LPVOID |
_P |
|
) |
| const |
|
virtual |
[取得] ファイル読み込み
- 引数
-
[in] | size | 読み込みサイズ。 |
[out] | _P | 読み込みアドレス。 size 分書き込める領域である必要が有ります。 |
- 戻り値
- 読み込めたサイズ。
- 例外
-
IReaderを実装しています。
TnbFtpFile.h の 401 行目に定義があります。
◆ ReadExactly() [1/2]
void ReadExactly |
( |
size_t |
size, |
|
|
LPVOID |
_P |
|
) |
| const |
|
inherited |
[取得] 読み込み.
- 覚え書き
- 指定サイズ読めないとエラーになります。
- 引数
-
[in] | size | 読み込みサイズ。 |
[out] | _P | 読み込みアドレス。 size 分書き込める領域である必要が有ります。 |
- 例外
-
TnbReader.h の 114 行目に定義があります。
◆ ReadExactly() [2/2]
[取得] 読み込み
- 覚え書き
- 指定サイズ読めないとエラーになります。
- 引数
-
size | 読み込みサイズ。0ならファイル最後まで読み込む。 |
- 戻り値
- ByteVector ファイル内容(サイズは読み込めたサイズ)。
- 例外
-
TnbReader.h の 134 行目に定義があります。
◆ ReadInto() [1/2]
size_t ReadInto |
( |
ICollectionT< BYTE > & |
_out, |
|
|
size_t |
size = 0 , |
|
|
size_t |
oneBlockSize = 4096 |
|
) |
| const |
|
inherited |
[取得] 読み込み.
- 引数
-
[out] | _out | 読込先。クリアせず、後ろに追加します。 |
| size | 読み込みサイズ。省略か0ならファイル最後まで読み込む。 |
| oneBlockSize | 一度に読み込むサイズ。省略なら4K。 |
- 戻り値
- 読み込めたサイズ。
- 例外
-
TnbReader.h の 178 行目に定義があります。
◆ ReadInto() [2/2]
[取得] 読み込み
- 引数
-
size | 読み込みサイズ。0ならファイル最後まで読み込む。 |
- 戻り値
- ByteVector ファイル内容(サイズは読み込めたサイズ)。
- 例外
-
TnbReader.h の 150 行目に定義があります。
◆ Seek()
LONGLONG Seek |
( |
LONGLONG |
llOffset, |
|
|
ESeekMode |
eSeek = TOP |
|
) |
| const |
|
virtual |
[操作] シーク.
ファイルポインタを移動します。
- 注意
- ファイルポインタの移動は、空読み込みすることで、行なっています。 その為、パフォーマンスは良くありません。また、現在のポインタより前に戻る場合、 再オープンされます。
- 引数
-
llOffset | ファイルポインタの移動数。 |
eSeek | 移動開始ファイルポインタ位置。省略すると TOP になります。 |
- 戻り値
-
0以上 | シーク成功。数値は、現在のファイルポインタ |
マイナス | シーク失敗 |
IReaderを実装しています。
TnbFtpFile.h の 442 行目に定義があります。