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)));
我有一个 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)));