千家信息网

C#怎么把DataTable导出为Excel文件

发表于:2026-11-03 作者:千家信息网编辑
千家信息网最后更新 2026年11月03日,本文小编为大家详细介绍"C#怎么把DataTable导出为Excel文件",内容详细,步骤清晰,细节处理妥当,希望这篇"C#怎么把DataTable导出为Excel文件"文章能帮助大家解决疑惑,下面跟
千家信息网最后更新 2026年11月03日C#怎么把DataTable导出为Excel文件

本文小编为大家详细介绍"C#怎么把DataTable导出为Excel文件",内容详细,步骤清晰,细节处理妥当,希望这篇"C#怎么把DataTable导出为Excel文件"文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。

实现DataTable转为Excel文件,和上次分享的Excel文件转为DataTable互为反操作。DataTable转化为Excel文件是通过传入一个DataTable类型的参数,然后将传入的DataTable转化为Excel文件。实现关键代码如下:

方法一:

/// /// DataTable数据导出Excel/// /// /// public static void DataTableExport(DataTable data, string filepath){    try    {        //Workbook book = new Workbook("E:\\test.xlsx"); //打开工作簿        Workbook book = new Workbook(); //创建工作簿        Worksheet sheet = book.Worksheets[0]; //创建工作表        Cells cells = sheet.Cells; //单元格        //创建样式        Aspose.Cells.Style style = book.Styles[book.Styles.Add()];        style.Borders[Aspose.Cells.BorderType.LeftBorder].LineStyle = Aspose.Cells.CellBorderType.Thin; //应用边界线 左边界线          style.Borders[Aspose.Cells.BorderType.RightBorder].LineStyle = Aspose.Cells.CellBorderType.Thin; //应用边界线 右边界线          style.Borders[Aspose.Cells.BorderType.TopBorder].LineStyle = Aspose.Cells.CellBorderType.Thin; //应用边界线 上边界线          style.Borders[Aspose.Cells.BorderType.BottomBorder].LineStyle = Aspose.Cells.CellBorderType.Thin; //应用边界线 下边界线           style.HorizontalAlignment = TextAlignmentType.Center; //单元格内容的水平对齐方式文字居中        style.Font.Name = "宋体"; //字体        style1.Font.IsBold = true; //设置粗体        style.Font.Size = 11; //设置字体大小        //style.ForegroundColor = System.Drawing.Color.FromArgb(153, 204, 0); //背景色        //style.Pattern = Aspose.Cells.BackgroundType.Solid; //背景样式        //style.IsTextWrapped = true; //单元格内容自动换行                //表格填充数据        int Colnum = data.Columns.Count;//表格列数         int Rownum = data.Rows.Count;//表格行数         //生成行 列名行         for (int i = 0; i < Colnum; i++)        {            cells[0, i].PutValue(data.Columns[i].ColumnName); //添加表头            cells[0, i].SetStyle(style); //添加样式            //cells.SetColumnWidth(i, data.Columns[i].ColumnName.Length * 2 + 1.5); //自定义列宽            //cells.SetRowHeight(0, 30); //自定义高        }        //生成数据行         for (int i = 0; i < Rownum; i++)        {            for (int k = 0; k < Colnum; k++)            {                cells[1 + i, k].PutValue(data.Rows[i][k].ToString()); //添加数据                cells[1 + i, k].SetStyle(style); //添加样式            }            cells[1 + i, 5].Formula = "=B" + (2 + i) + "+C" + (2 + i);//给单元格设置计算公式,计算班级总人数        }        sheet.AutoFitColumns(); //自适应宽        book.Save(filepath); //保存        GC.Collect();    }    catch (Exception e)    {        logger.Error("生成excel出错:" + e.Message);    }}

方法二:

public void ToExcel(DataTable dt)    {        #region 3s          var FilePath = @"D:\ToExcel\";//产生Excel文件路径        DeleteFile(FilePath);        //创建全新的Workbook         var workbook = new HSSFWorkbook();//一個sheet最多65536行        var count = 0;        for (double i = 0; i < Convert.ToDouble(dt.Rows.Count) / Convert.ToDouble(65534); i++)//每个Excel文件的一个页签只能存放65536行数据        {            var row_index = 0;            //创建Sheet            workbook.CreateSheet("Sheet" + i);            //根据Sheet名字获得Sheet对象              var sheet = workbook.GetSheet("Sheet" + i);            IRow row;            row = sheet.CreateRow(row_index);            //写入标题            for (int j = 0; j < dt.Columns.Count; j++)            {                row.CreateCell(j).SetCellValue(dt.Columns[j].Caption.ToString());            }            row = sheet.CreateRow(++row_index);            //写入数据            for (int j = 0; j < (dt.Rows.Count - count > 65534 ? 65534 : dt.Rows.Count - count); j++)            {                var r = dt.Rows[j + count];                for (int k = 0; k 

读到这里,这篇"C#怎么把DataTable导出为Excel文件"文章已经介绍完毕,想要掌握这篇文章的知识点还需要大家自己动手实践使用过才能领会,如果想了解更多相关内容的文章,欢迎关注行业资讯频道。

文件 数据 单元 样式 界线 边界 边界线 应用 生成 C# 文章 表格 工作 内容 字体 数字 方式 方法 背景 格内 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 科技与互联网 科技制造互联网公司 互联网金融 金融科技 中国 科技 互联网 互联网未来科技 万易互联网科技有限公司 华中科技大学互联网 联恩商钥互联网科技有限公司 开启互联网科技时代小说 互联网和高科技公司 互联网科技商业 互联网科技大赛获奖感言 陕西云淼互联网科技公司 互联网科技包装股份有限公司上市 抖集互联网科技技术咨询 兰石爱特工业互联网科技分公司 安徽零酒互联网科技有限公司 第三届互联网大会安防黑科技 华人运通互联网科技公司 科技互联网企业在行动 科技和互联网公司 厦门中拓互联网络科技有限公司 为想互联网科技 互联网校园科技培训 乌苏新华互联网科技做什么的 佛山市翊博互联网络科技有限公司 每天都有哪些好的互联网科技 广东工业互联网大赛深圳学泰科技 银川新华互联网科技学校是国营吗 互联网科技快速发展优美句子
0