CompressEncoderで圧縮したデータを展開するStreamです。
コンストラクタに圧縮データが入ったStreamを渡して生成します。他のStreamに流し込む際に展開されながら出力されます。
src : FileStream("foo.png", "r"); tmp : FileStream("tmp.z", "w"); enc : CompressEncoder(tmp); enc.pour_all(src); src.close(); tmp.close(); dst : FileStream("bar.png", "w"); tmp = FileStream("tmp.z", "r"); dec : CompressDecoder(tmp); dst.pour_all(dec); dst.close(); tmp.close();
tmp.zというファイルを介してEncoder/Decoderで圧縮・展開するプログラムを書いてみました。 pngだとむしろサイズが大きくなってしまいましたが、生のバイナリデータやテキストデータではそれなりにサイズが小さくなりました。
(constructor) | |
(destructor) | |
close | |
read |