Beispiel #1
0
        /// <summary>
        ///   Uncompress a ZLIB-compressed byte array into a single string.
        /// </summary>
        ///
        /// <seealso cref="ZlibStream.CompressString(String)"/>
        /// <seealso cref="ZlibStream.UncompressBuffer(byte[])"/>
        ///
        /// <param name="compressed">
        ///   A buffer containing ZLIB-compressed data.
        /// </param>
        ///
        /// <returns>The uncompressed string</returns>
        public static String UncompressString(byte[] compressed)
        {
            using (var input = new MemoryStream(compressed))
            {
                Stream decompressor =
                    new ZlibStream(input, CompressionMode.Decompress);

                return ZlibBaseStream.UncompressString(compressed, decompressor);
            }
        }
Beispiel #2
0
 /// <summary>
 ///   Compress a string into a byte array using ZLIB.
 /// </summary>
 ///
 /// <remarks>
 ///   Uncompress it with <see cref="ZlibStream.UncompressString(byte[])"/>.
 /// </remarks>
 ///
 /// <seealso cref="ZlibStream.UncompressString(byte[])"/>
 /// <seealso cref="ZlibStream.CompressBuffer(byte[])"/>
 ///
 /// <param name="s">
 ///   A string to compress.  The string will first be encoded
 ///   using UTF8, then compressed.
 /// </param>
 ///
 /// <returns>The string in compressed form</returns>
 public static byte[] CompressString(String s)
 {
     using (var ms = new MemoryStream())
     {
         Stream compressor =
             new ZlibStream(ms, CompressionMode.Compress, CompressionLevel.BestCompression);
         ZlibBaseStream.CompressString(s, compressor);
         return ms.ToArray();
     }
 }