using System; using System.Collections.Generic; using System.IO; using System.IO.Compression; using System.Linq; using System.Text; using System.Threading.Tasks; namespace Tango.Transport.Compression { public static class GZipHelper { public static byte[] Compress(byte[] buffer) { using (MemoryStream ms = new MemoryStream()) { using (GZipStream zip = new GZipStream(ms, CompressionMode.Compress, true)) { zip.Write(buffer, 0, buffer.Length); } return ms.ToArray(); } } public static byte[] Decompress(byte[] gzBuffer) { using (MemoryStream msOut = new MemoryStream()) { using (MemoryStream ms = new MemoryStream(gzBuffer)) { using (GZipStream zip = new GZipStream(ms, CompressionMode.Decompress)) { zip.CopyTo(msOut); } } return msOut.ToArray(); } } } }