ZipFile注释中的编码错误
本文关键字:编码 错误 注释 ZipFile | 更新日期: 2023-09-27 18:26:00
我正在使用Ionic.ZIP.ZipFile类读取ZIP文件的注释,重音字符(如éêè)似乎有问题。就我而言,我没有收到"Éric",而是收到"╔ric".
我的代码是:
using (ZipFile zipFile = new ZipFile(path))
{
comment = zipFile.Comment;
}
Path是ZIP文件的路径。我也试着直接把编码,但同样的结果(像这样):
using (ZipFile zipFile = new ZipFile(path, Encoding.UTF8))
{
comment = zipFile.Comment;
}
注释有特定的编码吗?
多亏了Moby Disk,我找到了解决方案。在将注释编码为您使用的注释(在我的情况下是默认的注释)之前,您需要获得正确的注释编码。
代码如下:
using (ZipFile zipFile = new ZipFile(path))
{
byte[] bytes = Encoding.GetEncoding(437).GetBytes(zipFile.Comment);
comment = Encoding.Default.GetString(bytes);
}