Сначала думал, действительно косяк, но потом догадался открыть не в 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);