Я использую ICSharpCode.SharpZipLib.Zip для сжатия файлов и папок и передачи его в виде потока памяти с использованием response.Binary write.
Вот мой код:
MemoryStream df= new MemoryStream();
ZipOutputStream s = new ZipOutputStream(df);
s.SetLevel(9);
byte[] data = (byte[])file.OpenBinary();
s.Write(data, 0, data.Length);
s.Finish();
s.Close();
byte[] outBuf = df.GetBuffer();
Response.Expires = 0;
Response.Buffer = true;
Response.ClearContent();
Response.AddHeader("content-disposition", "inline; filename="out.zip");
Response.ContentType = "application/zip";
Response.BinaryWrite(outBuf);
HttpContext.Current.ApplicationInstance.CompleteRequest();
Когда я пытаюсь открыть файл out.zip, он говорит, что файл zip поврежден или
поврежден, и значение crc отображается как 000000.
Какое решение для этого?
Почему происходит эта ошибка?