GZipStream - параллельная распаковка файла большого размера - C#

Узнай цену своей работы

Формулировка задачи:

Всем привет! Проблема отображена в названии темы. С сжатием всё понятно: читаем кусочки файлов отдельным потоком, несколькими потоками эти кусочки сжимаем и отдельным потоком записываем. С распаковкой так сделать не получается, т.к. не известно каких размеров куски нужно читать, что приводит к забавной ошибке: "Неправильное магическое число в заголовке GZip. Передача должна идти в поток GZip." Есть идеи по поводу того, как с этим бороться?

Решение задачи: «GZipStream - параллельная распаковка файла большого размера»

textual
Листинг программы
 using (Stream stream = File.Open(Path.Combine(_readConfiguration,path), FileMode.Open))
                                                                       {
                                                                           using (GZipStream gz = new GZipStream(stream, CompressionMode.Decompress))
                                                                           {
                                                                               bytes = (byte[])(new BinaryFormatter()).Deserialize(gz);
                                                                               gz.Close();
                                                                           }
                                                                           stream.Close();
                                                                       }

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

9   голосов , оценка 3.667 из 5
Похожие ответы