std.zlib
zlib ライブラリ によってデータを圧縮/展開しますReferences:
Wikipedia Source:
std/zlib.d License:
Boost License 1.0. Authors:
Walter Bright
- エラー時に投げる例外
- buf[] の Adler32 チェックサムを計算します。引数 adler は、
チェックサムの累積的な計算に使う初期値です。
- buf[] の CRC32 チェックサムを計算します。引数 crc は、
チェックサムの累積的な計算に使う初期値です。
- srcbuf[] 内のデータを、
圧縮レベル level で圧縮します。
level のデフォルト値は 6 です。レベルとして有効な値は
1から9で、1が最低の圧縮率、9が最高となっています。
圧縮後のデータを返します。
- srcbuf[] のデータを展開します。
Params:
size_t destlen 展開後のデータサイズの見積もりを指定します。 正確である必要はありませんが、 ピッタリのサイズが指定されると高速になります。
Returns:
展開後のデータ
- 圧縮したいデータが一つのバッファにまとまっていない場合に使います。
- this(int level);
this(); - コンストラクタ。level は D.zlib.compress() と同じ
- buf 内のデータを圧縮し、圧縮済みデータを返します。
この関数からの一連の返値は、一つに結合すると全体の圧縮データになります。
(訳注: 要するに The buffers returned from successive calls to this should be concatenated together. 上手い訳がない…)
- 残っているデータを全て圧縮して返します。
返値は compress() で返ってきた値の後ろに追加して用います。
Params:
int mode 次のいずれかです: - Z_SYNC_FLUSH
- 次のバイト境界に揃えるようにフラッシュします。 この後に更にデータを圧縮する場合に用います。
- Z_FULL_FLUSH
- 次のバイト境界に揃えるようにフラッシュします。 この後に更にデータを圧縮するのだけれども、 展開側はこの途中の点からも展開をスタートできるようにしたい という時に用います。
- Z_FINISH
- (既定値) 全データの圧縮が完了した時に使います。
- 圧縮データが一つのバッファにまとまっていない場合に使います。
- this(uint destbufsize);
this(); - コンストラクタ。destbufsize は D.zlib.uncompress() と同じ
- buf[] 内のデータを展開し、展開後のデータを返します。
この関数からの一連の返値は、一つに結合すると全体の展開後データになります。
(訳注: The buffers returned from successive calls to this should be concatenated together.)
- 残っているデータ全てを展開します。
返値は uncompress() で返ってきた値の後ろに追加して用います。
これ以降、UnCompress オブジェクトは使用できません。