示例#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);
            }
        }
示例#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[])" />
 ///<seealso cref="GZipStream.CompressString(string)" />
 ///<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();
     }
 }