System.Classes.TStream
Delphi
TStream = class(TObject)
C++
class PASCALIMPLEMENTATION TStream : public System::TObject
プロパティ
| 種類 | 可視性 | ソース | ユニット | 親 |
|---|---|---|---|---|
| class | public | System.Classes.pas System.Classes.hpp |
System.Classes | System.Classes |
説明
TStream はディスクファイルやダイナミックメモリなどの記憶媒体に対して読み書きすることができる,ストリームオブジェクトの基本クラス型です。
TStream オブジェクトを使用することにより,特定の記憶媒体に格納されている情報に対する読み出し/書き込み,およびコピーを実行できます。TStream の派生クラスでは,ディスクファイルやダイナミックメモリなど,特定の記憶媒体との間で情報をやり取りするためのメソッドを実装します。ストリームに対してバイトの読み出し,書き込み,およびコピーを行うためのメソッドに加えて,ストリームオブジェクトを使用することにより,アプリケーションがストリームの任意の位置を検索できるようになります。TStream プロパティは,ストリームのサイズや現在位置などの情報を提供します。
また,TStream はストリームコンポーネント用のコンポーネントおよびファイラと連携するメソッドを,継承された単純なフォームに導入します。これらのメソッドはコンポーネントのストリームを開始するグローバルなルーチンによって自動的に呼び出されます。また,ストリームプロセスを開始するために直接呼び出すこともできます。ただし,コンポーネントストリームには次の 2 つのオブジェクトを必ず追加してください。
- ストリームのメソッドにパラメータとして渡すコンポーネントオブジェクト
- ストリームによって自動的に作成され,ストリームと関連付けられたファイラオブジェクト
TStream は,抽象クラス(C++ の純粋仮想クラスにあたる)です。TStream はインスタンス化しないでください。この処理は,下位クラスではオーバーライドされるべき抽象(純粋仮想)メソッドが行います。コンポーネントストリームに使用するメモリストリームやファイルストリームなどの下位ストリームオブジェクトは,グローバル関数 ReadComponentRes および WriteComponentRes を使用すると自動的に作成されます。それ以外の情報をストリームする場合は,データの種類や保存の形式によって下位クラスを選択します。以下のものがあります。
- TFileStream (ファイルを使って作業します)
- TStringStream (メモリ文字列を扱います)
- TStringStream (メモリバッファを使って作業します)
- TBlobStream (BLOB 項目を使って作業します)
- TWinSocketStream (ソケット接続で読み書きします)
- TOleStream (読み書きに COM インターフェースを使用します)