我想压缩一些数据,所以我想我应该通过deflate来运行流
它从304字节增加到578字节。这是1.9倍大。我在试着压缩它……我在这里做错了什么?
using (MemoryStream ms2 = new MemoryStream())
using (var ms = new DeflateStream(ms2, CompressionMode.Compress, true))
{
ms.WriteByte(1);
ms.WriteShort((short)txtbuf.Length);
ms.Write(txtbuf, 0, txtbuf.Length);
ms.WriteShort((short)buf2.Length);
ms.Write(buf2, 0, buf2.Length);
ms.WriteShort((short)buf3.Length);
ms.Write(buf3, 0, buf3.Length);
ms.Flush();
result_buf = ms2.ToArray();
}发布于 2012-07-14 13:59:19
小的数据块通常最终会变得更大,因为压缩算法使用了添加到输出中的代码表,或者需要更大的样本来找到足够的样本来处理。
你没做错什么。
https://stackoverflow.com/questions/11481438
复制相似问题