c# how new gzip byte array code example

Example: c# gzip byte array

static byte[] Compress(byte[] data)
{
  using (var compressedStream = new MemoryStream())
  using (var zipStream = new GZipStream(compressedStream, CompressionMode.Compress))
  {
    zipStream.Write(data, 0, data.Length);
    zipStream.Close();
    return compressedStream.ToArray();
  }
}

static byte[] Decompress(byte[] data)
{
  using (var compressedStream = new MemoryStream(data))
  using (var zipStream = new GZipStream(compressedStream, CompressionMode.Decompress))
  using (var resultStream = new MemoryStream())
  {
    zipStream.CopyTo(resultStream);
    return resultStream.ToArray();
  }
}