/// <summary> /// Decompresses a given text. /// </summary> /// <param name="resource">Text to decompress</param> /// <returns>Decompressed text</returns> private static string Decompress(byte[] resource) { // Uses in-memory deflate stream to decompress the resource using (MemoryStream memory = MemoryStream.New(resource)) { using (DeflateStream decompressor = DeflateStream.New(memory, CompressionMode.Decompress)) { using (StreamReader reader = StreamReader.New(decompressor)) { return(reader.ReadToEnd()); } } } }
/// <summary> /// Compresses a given text. /// </summary> /// <param name="resource">Text to compress</param> /// <returns>Compressed text</returns> private static byte[] Compress(string resource) { byte[] compressedBuffer = null; // Uses in-memory deflate stream to compress the resource using (MemoryStream memory = MemoryStream.New()) { using (DeflateStream compressor = DeflateStream.New(memory, CompressionMode.Compress)) { using (StreamWriter writer = StreamWriter.New(compressor)) { writer.Write(resource); } } compressedBuffer = memory.ToArray(); } return(compressedBuffer); }