Example #1
0
        public static byte[] Compress(byte[] data, ZlibLevel level = ZlibLevel.DEFAULT)
        {
            MemoryStream  memoryStream1 = new MemoryStream();
            ZOutputStream zoutputStream = new ZOutputStream(memoryStream1, (int)level);
            MemoryStream  memoryStream2 = new MemoryStream(data);

            try
            {
                ZlibProvider.CopyStream(memoryStream2, zoutputStream);
                zoutputStream.finish();
                data = memoryStream1.ToArray();
            }
            finally
            {
                zoutputStream.Close();
                memoryStream1.Close();
                memoryStream2.Close();
            }
            return(data);
        }
Example #2
0
        public static byte[] Decompress(byte[] data)
        {
            MemoryStream  memoryStream1 = new MemoryStream();
            ZOutputStream zoutputStream = new ZOutputStream(memoryStream1);
            MemoryStream  memoryStream2 = new MemoryStream(data);

            try
            {
                ZlibProvider.CopyStream(memoryStream2, zoutputStream);
                zoutputStream.finish();
                data = memoryStream1.ToArray();
            }
            finally
            {
                zoutputStream.Close();
                memoryStream1.Close();
                memoryStream2.Close();
            }
            return(data);
        }