с помощью System.IO.Compression.GzipStream.
Сжатие сделал, с декомпрессией проблемы.
Тестирую на файле, в котором очень много раз продублировано слово "Привет", на 122 кб (сжимается до 2 кб).
Следующий кусок кода теряет часть данных, обрываясь на одном из "приветов" на середине слова. Остаётся файл в 64 кб ровно, в котором примерно половина текста из исходного файла.
https://pastebin.com/z01vArZC
Если вручную разжимать, через 7zip или WinRar, то данные не теряются.
Может, я не так реализую блоки (в коде -- chunk)?
В чём может быть проблема с этим методом?
Не правильно
пропробуй через мемори стрим var to = new MemoryStream(); var from = new MemoryStream(decompressedFileStream .GetBytes()); var compress = new GZipStream(from, CompressionMode.Decompress); compress.CopyTo(to);
Обсуждают сегодня