D 1.0   D 2.0
About Japanese Translation

Last update Sun Jun 17 22:23:46 2007

std.zlib

zlibライブラリ によってデータを圧縮/展開します

References:
Wikipedia

License:
Public Domain

class ZlibException: object.Exception;
エラー時に送出される例外

uint adler32(uint adler, void[] buf);
buf[] の Adler32 チェックサムを計算します。引数 adler は、 チェックサムの累積的な計算に使う初期値です。

uint crc32(uint crc, void[] buf);
buf[] の CRC32 チェックサムを計算します。引数 crc は、 チェックサムの累積的な計算に使う初期値です。

void[] compress(void[] srcbuf, int level);
void[] compress(void[] buf);
buf[] 内のデータを、 圧縮レベル level で圧縮します。 level のデフォルト値は 6 です。レベルとして有効な値は 1から9で、1が最低の圧縮率、9が最高となっています。 圧縮後のデータを返します。

void[] uncompress(void[] srcbuf, size_t destlen = 0u, int winbits = 15);
srcbuf[] のデータを展開します。

Params:
size_t destlen 展開後のデータサイズの見積もりを指定します。 正確である必要はありませんが、 ピッタリのサイズが指定されると高速になります。

Returns:
展開後データ

class Compress;
圧縮したいデータが一つのバッファにまとまっていない場合に使います。

this(int level);
this();
コンストラクタ。level は D.zlib.compress() と同じ

void[] compress(void[] buf);
buf 内のデータを圧縮し、圧縮済みデータを返します。 この関数からの一連の返値は、一つに結合すると全体の圧縮データになります。 (訳注: 要するに The buffers returned from successive calls to this should be concatenated together. 上手い訳がない…)

void[] flush(int mode = Z_FINISH);
残っているデータを全て圧縮して返します。 返値は compress() で返ってきた値の後ろに追加して用います。

Params:
int mode 次のいずれかです:
Z_SYNC_FLUSH
次のバイト境界に揃えるようにフラッシュします。 この後に更にデータを圧縮する場合に用います。
Z_FULL_FLUSH
次のバイト境界に揃えるようにフラッシュします。 この後に更にデータを圧縮するのだけれども、 展開側はこの途中の点からも展開をスタートできるようにしたい という時に用います。
Z_FINISH
(既定値) 全データの圧縮が完了した時に使います。

class UnCompress;
圧縮データを一つのバッファにまとまっていない場合に使います。

this(uint destbufsize);
this();
コンストラクタ。destbufsizeD.zlib.uncompress() と同じ

void[] uncompress(void[] buf);
buf 内のデータを展開し、展開後のデータを返します。 この関数からの一連の返値は、一つに結合すると全体の展開後データになります。 (訳注: The buffers returned from successive calls to this should be concatenated together.)

void[] flush();
残っているデータ全てを展開します。 返値は uncompress() で返ってきた値の後ろに追加して用います。 これ以降、UnCompress オブジェクトは使用できません。