以下是使用 NPOI 库 将 DataTable 数据导出到 Excel 的详细步骤和代码示例(支持 .xls
和 .xlsx
格式):
步骤 1:安装 NPOI NuGet 包
Install-Package NPOI Install-Package NPOI.OOXML # 若需导出 .xlsx 格式
步骤 2:完整代码实现
using NPOI.SS.UserModel; using NPOI.XSSF.UserModel; // 支持 .xlsx 格式 using NPOI.HSSF.UserModel; // 支持 .xls 格式 using System.Data; using System.IO;public class ExcelExporterNpoi {/// <summary>/// 将 DataTable 导出到 Excel 文件/// </summary>/// <param name="dataTable">数据源</param>/// <param name="filePath">文件路径(如:C:\data.xlsx)</param>/// <param name="sheetName">工作表名称(默认 Sheet1)</param>public static void ExportToExcel(DataTable dataTable, string filePath, string sheetName = "Sheet1"){if (dataTable == null || dataTable.Rows.Count == 0)throw new ArgumentException("DataTable 不能为空");// 根据文件扩展名选择 Workbook 类型IWorkbook workbook;if (filePath.EndsWith(".xlsx"))workbook = new XSSFWorkbook();else if (filePath.EndsWith(".xls"))workbook = new HSSFWorkbook();elsethrow new ArgumentException("不支持的文件格式,仅支持 .xls 或 .xlsx");// 创建 Sheet 和表头样式