' IBM437'不是ZipFile Read Method支持的编码名称

时间:2014-09-23 10:52:51

标签: c# encoding windows-phone-8.1 zipfile

我的代码使用以下代码执行此操作时出现问题:

using (ZipFile archive = ZipFile.Read(File))    //<== Crash Here!
{
    foreach (ZipEntry entry in archive.Entries)
    {
        entry.Extract(UnZipFolder.Name.ToString(), ExtractExistingFileAction.OverwriteSilently);   
    }
}

当ZipFile尝试读取我的文件时发生崩溃它是一个字符串并包含,sincrofit.zip然后崩溃并抛出此异常:

  

&#39; System.ArgumentException&#39;其他信息:&#39; IBM437&#39;不是一个   支持的编码名称。

1 个答案:

答案 0 :(得分:5)

在Visual Studio中:

  1. 打开软件包管理器控制台并输入 Install-Package System.Text.Encoding.CodePages -Version 4.4.0 。适当更改版本号。

  2. 将此行添加到您的代码中: Encoding.RegisterProvider(CodePagesEncodingProvider.Instance);

  3. 如果需要,附上必要的指令。