ネットワークとプログラム

ネットワークとプログラムで困ったこと、勉強したこと、その他をつづっていくページです。

C# MemoryStreamを使用した圧縮(DeflateStream)

2009年08月16日 | プログラム
Byte[] data に入っているデータを MemoryStreamを使用して、
DeflateStreamによる圧縮するプログラムをメモする。

プログラムリスト
(0) using System.IO.Compression;
(1) MemoryStream ms = new MemoryStream();
処理した結果を格納する場所。
(2) DeflateStream cs = new DeflateStream(ms,CompressionMode.Compress,true);
csとmsを結びつける。
(3) cs.Write(data,0,data.length);
このタイミングで、圧縮処理。
(3.5) cs.close();
これを忘れると解凍のときにうまくいかない。
(4) byte[] compressData = ms.ToArray();
  圧縮したデータを取得する。  
(5) cs.close(); ms.close();
  不要になれば、解放。気分の問題かなあ。
MSDNでは、cs.close()は記述している。  

圧縮したbyte[] を取得できる。連続して圧縮する場合、(1)と(2)を事前に行い、(3)を繰り返すと良い。

メモメモ。

最新の画像もっと見る