C#,使用zlib解压流

C#,使用zlib解压流,c#,zlib,compression,C#,Zlib,Compression,我正在尝试解压缩一个字节数组 byte[] bloc = { 120, 156, 211, 97, 144, 76, 247, 142, 98, 228, 98, 0, 2, 70, 101, 6, 166, 8, 16, 131, 133, 131, 145, 129, 209, 134, 129, 133, 1, 44, 12, 4, 202, 118, 12, 0, 70, 22, 2, 148 }; 正如您所看到的,标题是120 165(78 9c十六进制),这是zlib默认的压缩算法

我正在尝试解压缩一个字节数组

byte[] bloc = { 120, 156, 211, 97, 144, 76, 247, 142, 98, 228, 98, 0, 2, 70, 101, 6, 166, 8, 16, 131, 133, 131, 145, 129, 209, 134, 129, 133, 1, 44, 12, 4, 202, 118, 12, 0, 70, 22, 2, 148 };
正如您所看到的,标题是120 165(78 9c十六进制),这是zlib默认的压缩算法。 我使用了zlib站点上的component ace.Compression.ZipForge。 我找不到有关如何解压缩流(不是文件)的示例。

使用。它包括zlib的完整接口,并将解压缩zlib流以及其他压缩数据格式,如gzip、zip、bzip2和raw deflate


您应该避免使用Microsoft提供的.NET组件,因为它们有缺陷(特别是在没有正确检测无效输入方面),并且Microsoft已经声明了它们。

为什么不直接使用内置的.NET流,如DeflateStream等?您看到第一个答案了吗:-尝试创建内存流并传递到OpenArchive方法