【发布时间】:2018-01-10 17:34:15
【问题描述】:
正如标题所说,我在 C# 中有大量数据表,我需要尽可能快地导出到 Excel,同时具有合理的内存消耗。
我尝试过使用以下方法:
-
EPPlus(目前最快) -
OpenXML(比EPPlus慢 - 不确定这是否有意义,因为EPPlus可能使用OpenXML?) -
SpreadsheetLight(慢) -
ClosedXML(大表的 OOM 异常)
假设海量数据集(最多 1,000,000 行,50 列)和无限的开发时间,我可以导出的最快方法是什么?
编辑:我需要的不仅仅是一张从 A1 开始的基本表格。我需要表格从我选择的单元格开始,我需要能够格式化包含数据的单元格,并且有多个选项卡,所有选项卡都包含自己的数据集。
谢谢。
【问题讨论】:
-
看看我的answer here中的代码。它展示了如何使用 SAX 方法使用 OpenXml,这应该是最快的方法。对于大型数据集,它的内存效率也会更高。
-
假设海量数据集(最多 1,000,000 行,50 列) Excel 是不适合这项工作的工具...我推荐 EPPlus,你已经试过并说是“最快的”,但除了“比我基准测试的'当前最快'更快”之外,您没有描述任何类型的性能要求”
标签: c# excel datatable openxml closedxml