ZipArchive сжатая папка имеет неверный формат [RESOLVED]
От: vaa  
Дата: 07.06.22 01:56
Оценка:
Сначала думал, действительно косяк, но потом догадался открыть не в explorer, а в far.
Архив нормально читается.
Что нужно сделать чтобы он открывался в проводнике?

net6.0.300

using System;
using System.IO;
using System.IO.Compression;

            using var ms = new MemoryStream();
            using var zip = new ZipArchive(ms, ZipArchiveMode.Create, true /* <= */); 

            foreach (var file in files)
            {
                var entry = zip.CreateEntry(file.FileName, CompressionLevel.Fastest);
                using var entryStream = entry.Open();
                var data = System.Text.UTF8Encoding.UTF8.GetBytes(file.FileName);
                entryStream.Write(data, 0, data.Length);
            }
            await ms.FlushAsync(); //<=
            zip.Dispose(); //<= 
            ms.Position = 0;
            using var zipFile = System.IO.File.Create(@"c:\tmp\123.zip");
            ms.CopyTo(zipFile);
☭ ✊ В мире нет ничего, кроме движущейся материи.
Отредактировано 07.06.2022 3:10 Разраб . Предыдущая версия . Еще …
Отредактировано 07.06.2022 2:14 Разраб . Предыдущая версия .
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.