public static byte[] Uncompress(string sourceFilename, int numberBytes)
{
using (var compressedByteStream = new FileStream(sourceFilename, FileMode.Open, FileAccess.Read))
{
var reader = new BinaryReader(compressedByteStream);
// message Length.
reader.ReadInt32();
// GZipStream requires using. Do not optimize the stream.
using (var zip = new GZipStream(compressedByteStream, CompressionMode.Decompress))
{
var arr = new byte[numberBytes];
zip.Read(arr, 0, numberBytes);
return arr;
}
}
}