在 UWP 上使用 NPOI 创建 Excel 文件

Creating an Excel File with NPOI on UWP

我正在开发一个 UWP 应用程序,它获取有关资产的信息,将它们分组并使用该信息创建 Excel。

我正在使用 NPOI 库,它没有抛出任何异常,但是无法读取 excel 文件。

我总结的代码是这样的:

using(NPOIStream stream = new NPOIStream())  //<-- Not important. An overriden MemoryStream
{
   IWorkbook workbook = new XSSFWorkbook();
   // I fill my XSSFWorkbook

   workbook.Write(stream);

   byte[] buffer = stream.GetBuffer();

   // StorageFolder folder is already picked
   StorageFile = await folder.CreateFileAsync("sample.xlsx", CreationCollisionOption.ReplaceExisting);

   await FileIO.WriteByteAsync(file, buffer);
}

欢迎任何帮助。

现在,NPOI 支持dotnet core,您可以在UWP 项目中安装NPOI NuGet 包。


旧答案:

NPOI 是一个 nuget 库,您应该使用 nuget 来安装它。参见 dotnetcore/NPOI: A .NET library for reading and writing Microsoft Office binary and OOXML file formats.

终于用上了EPPlus 4+版本

创建文件时,将 CreationCollisionOptionsReplaceExisting 更改为 GenerateUniqueName。然后手动删除该文件以尽量减少存储 space 用完。