Распаковать байты с помощью DeflateStream
Я пытаюсь распаковать массив байтов. Потому что я хочу извлечь файл.png из почтового индекса.
Я попробовал это:
var compressedData = ZlibStream.UncompressBuffer(cByteArray);
var uncompressedData = ZlibStream.CompressBuffer(compressedData);
using(FileStream fs = new FileStream(@"F:\picture.png", FileMode.Create)){
fs.Write(uncompressedData, 0, uncompressedData);
}
Но получил следующую ошибку: Плохое состояние (неизвестный метод сжатия (0x5C))
Так может кто-нибудь помочь мне, как получить файл из данных. Сжатые данные из записи zip-файла. Так что заголовок исключен.
1 ответ
Решение
Использование DeflateStream
не ZlibStream
, Первый обрабатывает необработанные данные выкачивания в виде zip-файлов. Последний обрабатывает потоки zlib, которые дефлируют данные с помощью оболочки zlib.