System.ZLib.TZCompressionStream
Delphi
TZCompressionStream = class(TCustomZStream)
C++
class PASCALIMPLEMENTATION TZCompressionStream : public TCustomZStream
プロパティ
種類 | 可視性 | ソース | ユニット | 親 |
---|---|---|---|---|
class | public | System.ZLib.pas System.ZLib.hpp |
System.ZLib | System.ZLib |
説明
ストリームに書き込むときにデータを圧縮します。
TZCompressionStream は、書き込み時にデータを圧縮する、書き込み専用の順次アクセス ストリームです。圧縮されたデータは別のストリームに書き込まれ、それが TZCompressionStream のコンストラクタに渡されます。TZCompressionStream は出力ストリームの所有権を自分のものにしません。ストリームを作成し、初期化し、不要になったら破棄するのは、開発者の責任です。
TZCompressionStream オブジェクトから読み出しを行うと、ECompressionError 型の例外が発生し、メッセージ文字列は "Invalid Stream Operation" に設定されます。同様に、Seek 操作を行うと ECompressionError 例外が発生しますが、現在の位置からオフセットが 0 の Seek 操作を実行することは可能です。そうすると、ストリームに書き込まれた、圧縮されないそのままのバイトが返されます。
ストリーム オブジェクトを作成するときに、使用する圧縮レベルを設定します。指定可能な圧縮レベルは、clNone、clFastest、clDefault、および clMax です。
ストリームの出力バッファにデータを書き込み、TZCompressionStream に対して Write 操作を呼び出すと、バッファの内容が出力ストリームに書き出され、それから OnProgress イベントが呼び出されます。この OnProgress イベントを使用して、進捗インジケーターなどのユーザー インターフェイス コントロールを更新することができます。