Я использую SharpZipLib для архивирования нескольких файлов и загружаю их в мое веб-приложение asp.net c #.После загрузки я не могу открыть zip-архив.Сообщение об ошибке Windows:
Windows не может открыть папку.Сжатая (заархивированная) папка 'filename.zip' недействительна.
Это мой код
if (Session["lstFilesToZip"] != null)
{
List<string> filesToZip = (List<string>)Session["lstFilesToZip"];
if (filesToZip.Count > 0)
{
Response.AddHeader("Content-Disposition", "attachment; filename=fileName.zip");
Response.ContentType = "application/zip";
using (var zipStream = new ZipOutputStream(Response.OutputStream))
{
foreach (string filePath in filesToZip)
{
byte[] fileBytes = System.IO.File.ReadAllBytes(filePath);
var fileEntry = new ZipEntry(Path.GetFileName(filePath))
{
Size = fileBytes.Length
};
zipStream.PutNextEntry(fileEntry);
zipStream.Write(fileBytes, 0, fileBytes.Length);
}
zipStream.Flush();
zipStream.Close();
}
}
}
Я уже пытался добавить
zipStream.Dispose();
zipStream.Finish();
безуспех.
Может быть, кто-то может помочь.Я не могу найти проблему.