ZipArchive Entry.FullName 损坏

ZipArchive Entry.FullName mangled

我有一个 zip 文件,其中包含一个名为:
plätförm-sheet0.png

当我将字节加载到内存中时,然后循环每个条目:

using (var data = new MemoryStream(archiveBytes))
{
    var archive = new ZipArchive(data);
    foreach (var entry in archive.Entries)
    {
        entry.Name.Log();
        entry.FullName.Log();

它记录值:

pl„tf”rm-sheet0.png
pl„tf”rm-sheet0.png

如何在尝试提取之前正确保留 zip 文件中存在的原始文件名 plätförm-sheet0.png

尝试在读取 zip 时指定编码

var archive = new ZipArchive(data , ZipArchiveMode.Read, false, Encoding.GetEncoding(437)));