.net C# 使用Epplus库将Datatable导出到Excel合并首列
最近处理大量数据,需单独导出到首列名称一致的excel,Epplus免费,效率spire高,在Nuget添加Epplus。因为特殊原因,不能使用数据库,只能由数据源导出到excel;最终处理39万行输出到单独的excel文件时间2分钟。
一、EPPlus 基础介绍
EPPlus 是一个开源的 .NET 库(适用于 **.NET Framework 4.5+ 和 .NET Core 3.1+**),专业处理 Excel 文件(支持 **.xlsx** 格式)。其特点包括:
- 无需 Office 依赖:直接通过代码操作 Excel
- 高性能:专门针对大数据量优化(支持流式写入)
- 丰富特性:
- 单元格格式(样式、公式、条件格式)
- 图表操作(折线图、柱状图、饼图)
- 数据验证、筛选、数据透视表
- 图片插入、形状绘制、VBA宏支持
二、对比其他库(NPOI vs EPPlus)
功能 | EPPlus | NPOI | ClosedXML |
---|---|---|---|
性能 | 优 (多核优化) | 中 | 良 |
API友好度 | 高 | 低 | 高 |
图表支持 | 完整 | 有限 | 部分支持 |
大数据处理 | 支持 >100万行 | 支持 ~50万行 | 支持 ~30万行 |
文档丰富度 | 完善 | 中等 | 中等 |
数据规模 | Spire.XLS耗时 | EPPlus耗时 |
---|---|---|
10,000行 | 45秒 | 1.2秒 |
100,000行 | 超时 | 3.8秒 |
390,000行 | 无法完成 | 14.6秒 |
三、直接上代码:
--------------------------
调用&#