Fork Me On Github

依赖

使用NuGet安装

SharpZipLib

主要代码

using ICSharpCode.SharpZipLib.Zip.Compression;


byte[] data; // 要解码内容
using var outputStream = new MemoryStream();
var inflater = new Inflater();
try
{
    inflater.SetInput(data);
    var buffer = new byte[2048];
    while (!inflater.IsFinished)
    {
        var count = inflater.Inflate(buffer);
        outputStream.Write(buffer, 0, count);
    }
}
catch (Exception)
{
    inflater.Reset();
}
byte[] res = outputStream.ToArray(); //解码结果

与 php gzuncompress 比较

gzuncompress 主要是不必考虑有无gzip头,都能进行解码

SharpZipLib 中默认的解码方法 GZipInputStream 并不支持无头内容,

点击查看全文
0 35 0