我有一些已通過DEFLATE算法的數據。如果我運行命令perl -MCompress::Zlib -e 'undef $/; print uncompress(<>)' < deflated_data.gz
打印正確的輸出。但是,如果我在相同的數據上使用以下代碼,則在嘗試膨脹數據時收到InvalidDataException
。是否有任何INFLATE的實現會告訴我數據不正確的地方?檢查DEFLATED數據的有效性
public byte[] Inflate(byte[] inputData)
{
using (Stream input = new DeflateStream(new MemoryStream(inputData),
CompressionMode.Decompress))
{
using (MemoryStream output = new MemoryStream())
{
input.CopyTo(output);
return output.ToArray();
}
}
}
[使用GZip的異常]的可能的重複(http://stackoverflow.com/questions/11271282/exception-using-gzip) –
這不是重複的。 GZip和Deflate的數據格式有所不同。 – cytinus