Я получил все файлы в заархивированном виде, но когда я открываю файлы, возникает ошибка
"Файл не может быть открыт, либо он не поддерживаемого типа, либо файл поврежден"
Я меняю pdf в байт[],
Код: Выделить всё
ArrayList PDFbyteList = new ArrayList();
byte[] bytes = System.IO.File.ReadAllBytes(@"C:\Windows\SysWOW64\config\systemprofile\Desktop\" + PdfFile);
PDFbyteList.Add(bytes);
Код: Выделить всё
public FileResult DownloadMultiplePDFFiles(List list)
{
int count = list.Count();
byte[] file1;
using (MemoryStream ms = new MemoryStream())
using (var archive = new ZipArchive(ms, ZipArchiveMode.Create, true))
{
for (var i = 0; i < count; i++)
{
file1 = ObjectToByteArray(PDFbyteList[i]);
string name = list[i].FileDownloadName.Split('.')[0];
name = name + ".pdf";
var zipArchiveEntry = archive.CreateEntry(name, CompressionLevel.Fastest);
using (var zipStream = zipArchiveEntry.Open()) zipStream.Write(file1, 0, file1.Length);
file1 = null;
}
//return File(ms.ToArray(), "application/zip", "Reports.zip");
return File(ms.ToArray(), "application/octet-stream", "Reports.zip");
}
}
Я пробовал использовать «application/octet-stream», а также «application/zip», но возникла та же ошибка.
Подробнее здесь: https://stackoverflow.com/questions/558 ... -code-atta