使用
之类的代码using OfficeOpenXml; // namespace for the ExcelPackage assembly
…
FileInfo newFile = new FileInfo(@"C:\mynewfile.xlsx");
using (ExcelPackage xlPackage = new ExcelPackage(newFile)) { … }
我收到
的异常错误'IBM437'不是受支持的编码名称。有关定义的信息 自定义编码,请参阅文档 Encoding.RegisterProvider方法。参数名称:名称
关于问题可能是什么想法?
由于 马丁
答案 0 :(得分:2)
问题出在ZIP文件阅读器(ZipInputStream
)中。您需要手动添加windows-1252
这样的编码:
dotnet add package System.Text.Encoding.CodePages
Encoding.RegisterProvider(CodePagesEncodingProvider.Instance);
此处有更多信息:.NET Core doesn't know about Windows 1252, how to fix?
答案 1 :(得分:0)
如果您的项目是.net核心,请编辑您的项目文件,然后添加
<ItemGroup>
<PackageReference Include="System.Text.Encoding.CodePages" Version="4.3.0" />
</ItemGroup>
并在您的startup.cs
中添加
System.Text.Encoding.RegisterProvider(CodePagesEncodingProvider.Instance);