C# GZIP 압축
압축
        public static byte[] Compression(string str) 
        { 
            var rowData = Encoding.UTF8.GetBytes(str); 
            byte[] compressed = null; 
            using (var outStream = new MemoryStream()) 
            { 
                using (var hgs = new GZipStream(outStream, CompressionMode.Compress)) 
                { 
                    hgs.Write(rowData, 0, rowData.Length); 
                } 
                compressed = outStream.ToArray(); 
            } 
            return compressed; 
        }
해제
        public static byte[] Decompress(byte[] gzip) 
        { 
            using (GZipStream stream = new GZipStream(new MemoryStream(gzip), CompressionMode.Decompress)) 
            { 
                const int size = 4096; 
                byte[] buffer = new byte[size]; 
                using (MemoryStream memory = new MemoryStream()) 
                { 
                    int count = 0; 
                    do 
                    { 
                        count = stream.Read(buffer, 0, size); 
                        if (count > 0) 
                        { 
                            memory.Write(buffer, 0, count); 
                        } 
                    } 
                    while (count > 0); 
                    return memory.ToArray(); 
                } 
            } 
        }