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

                return ZlibBaseStream.UncompressString(compressed, decompressor);
            }
        }
Example #2
0
 ///<summary>
 ///  Compress a string into a byte array using DEFLATE (RFC 1951).
 ///</summary>
 ///<remarks>
 ///  Uncompress it with <see cref="DeflateStream.UncompressString(byte[])" /> .
 ///</remarks>
 ///<seealso cref="DeflateStream.UncompressString(byte[])">DeflateStream.UncompressString(byte[])</seealso>
 ///<seealso cref="DeflateStream.CompressBuffer(byte[])">DeflateStream.CompressBuffer(byte[])</seealso>
 ///<seealso cref="GZipStream.CompressString(string)">GZipStream.CompressString(string)</seealso>
 ///<seealso cref="ZlibStream.CompressString(string)">ZlibStream.CompressString(string)</seealso>
 ///<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 DeflateStream(ms, CompressionMode.Compress, CompressionLevel.BestCompression);
         ZlibBaseStream.CompressString(s, compressor);
         return ms.ToArray();
     }
 }