当前位置: 首页 > news >正文

c# 使用NPOI将datatable的数据导出到excel

以下是使用 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();
        else
            throw new ArgumentException("不支持的文件格式,仅支持 .xls 或 .xlsx");

        // 创建 Sheet 和表头样式
 

相关文章:

  • OSPF不规则区域和LSA
  • 【Java学习】AI时代下如何学习Java语言开发
  • 【算法学习计划】回溯 -- 记忆化搜索
  • StringTemplate修仙指南:字符串处理的“言出法随“大法
  • 智能物联网网关策略部署
  • vue3+vite+js项目引入electron构建跨平台桌面应用
  • Excel 自动执行全局宏
  • 项目进度延误的十大原因及应对方案
  • 4-10记录(
  • 聊天室项目Day3之服务器的http的get和post回复实现
  • 软件信息安全性测试如何进行?有哪些注意事项?
  • 神经网络入门—自定义神经网络续集
  • 2. 单词个数统计
  • WPS JS宏编程教程(从基础到进阶)-- 第六部分:JS集合与映射在 WPS 的应用
  • 关于使用@Slf4j后引入log,idea标红解决办法
  • Linux | I.MX6ULL外设功能验证(11)
  • FreeRTOS项目工程完善指南:STM32F103C8T6系列
  • 【结合vue源码,分析vue2及vue3的数据绑定实现原理】
  • 【力扣hot100题】(083)零钱兑换
  • Redis 持久化机制详解:RDB/AOF 过程、优缺点及配置。Redis持久化中的Fork与Copy-on-Write技术解析。
  • 新网站建设平台/海淀区seo引擎优化多少钱
  • 网页设计介绍北京网站/又一病毒来了比新冠可怕
  • 创业论坛网站有哪些/网站搭建需要什么技术
  • 郑州营销型网站制作运营/网站制作培训
  • 分类信息网站做推广/专业网站推广优化
  • 手机能建设网站/本周国内重大新闻十条