Crisis.Ionic.Zlib.ZlibBaseStream.UncompressBuffer C# (CSharp) Метод

UncompressBuffer() публичный статический Метод

public static UncompressBuffer ( byte compressed, Stream decompressor ) : byte[]
compressed byte
decompressor Stream
Результат byte[]
        public static byte[] UncompressBuffer(byte[] compressed, Stream decompressor)
        {
            // workitem 8460
            byte[] working = new byte[1024];
            using (var output = new MemoryStream())
            {
                using (decompressor)
                {
                    int n;
                    while ((n = decompressor.Read(working, 0, working.Length)) != 0)
                    {
                        output.Write(working, 0, n);
                    }
                }
                return output.ToArray();
            }
        }

Usage Example

Пример #1
0
        /// <summary>
        ///   Uncompress a GZip'ed byte array into a byte array.
        /// </summary>
        ///
        /// <seealso cref="GZipStream.CompressBuffer(byte[])"/>
        /// <seealso cref="GZipStream.UncompressString(byte[])"/>
        ///
        /// <param name="compressed">
        ///   A buffer containing data that has been compressed with GZip.
        /// </param>
        ///
        /// <returns>The data in uncompressed form</returns>
        public static byte[] UncompressBuffer(byte[] compressed)
        {
            using (var input = new System.IO.MemoryStream(compressed))
            {
                System.IO.Stream decompressor =
                    new GZipStream(input, CompressionMode.Decompress);

                return(ZlibBaseStream.UncompressBuffer(compressed, decompressor));
            }
        }