import "compress/zlib"

RFC 1950で定義されているzlib形式圧縮ファイルの読み込み、及び書き込みを実装しています。

パッケージファイル

reader.go writer.go

定数

これらの定数はflateパッケージからコピーされます。”compress/flate”パッケージをインポートする必要はありません。

const (
    NoCompression      = flate.NoCompression;
    BestSpeed          = flate.BestSpeed;
    BestCompression    = flate.BestCompression;
    DefaultCompression = flate.DefaultCompression;
)

変数

var ChecksumError os.Error = os.ErrorString("zlib checksum error")
var HeaderError os.Error = os.ErrorString("invalid zlib header")
var UnsupportedError os.Error = os.ErrorString("unsupported zlib format")

NewDeflater関数

func NewDeflater(w io.Writer) (io.WriteCloser, os.Error)

NewDeflaterはデフォルト圧縮レベルでNewDeflaterLevelを呼びます。

NewDeflaterLevel関数

func NewDeflaterLevel(w io.Writer, level int) (io.WriteCloser, os.Error)

NewDeflaterは圧縮データをwへ書き込む新しいio.WriteCloserを作成します。使い終わったら呼び出し側の責任でWriteCloserのCloseを呼び出してください。levelは圧縮レベルであり、DefaultCompression(デフォルト圧縮)、NoCompression(圧縮無し)、またはBestSpeed(速度最優先(=1))からBestCompression(圧縮率最優先(=9))の整数値を指定することが可能です。

NewInflater関数

func NewInflater(r io.Reader) (io.ReadCloser, os.Error)

NewInflaterは非圧縮データをrから読み込む新しいio.ReadCloserを作成します。実装しているバッファはrから必要以上のデータを読み込む可能性があります。使い終わったら呼び出し側の責任でReadCloserのCloseを呼び出してください。

バグ

zlibパッケージにはFDICTフラグは実装されていません。