public static byte[] Compress(byte[] pbData) { if (pbData == null) { throw new ArgumentNullException("pbData"); } if (pbData.Length == 0) { return(pbData); } byte[] pbCompressed; using (MemoryStream msSource = new MemoryStream(pbData, false)) { using (MemoryStream msCompressed = new MemoryStream()) { using (GZipStream gz = new GZipStream(msCompressed, CompressionMode.Compress)) { MemUtil.CopyStream(msSource, gz); } pbCompressed = msCompressed.ToArray(); } } return(pbCompressed); }
public static byte[] Decompress(byte[] pbCompressed) { if (pbCompressed == null) { throw new ArgumentNullException("pbCompressed"); } if (pbCompressed.Length == 0) { return(pbCompressed); } byte[] pbData; using (MemoryStream msData = new MemoryStream()) { using (MemoryStream msCompressed = new MemoryStream(pbCompressed, false)) { using (GZipStream gz = new GZipStream(msCompressed, CompressionMode.Decompress)) { MemUtil.CopyStream(gz, msData); } } pbData = msData.ToArray(); } return(pbData); }
public static byte[] Decompress(byte[] pbCompressed) { if (pbCompressed == null) { throw new ArgumentNullException("pbCompressed"); } if (pbCompressed.Length == 0) { return(pbCompressed); } MemoryStream msCompressed = new MemoryStream(pbCompressed, false); GZipStream gz = new GZipStream(msCompressed, CompressionMode.Decompress); MemoryStream msData = new MemoryStream(); MemUtil.CopyStream(gz, msData); gz.Close(); msCompressed.Close(); byte[] pbData = msData.ToArray(); msData.Close(); return(pbData); }