C#使用Datatable导出Excel
本文实例为大家分享了C#使用Datatable导出Excel的具体代码,供大家参考,具体内容如下
usingNPOI.SS.UserModel;
usingNPOI.XSSF.UserModel;
usingSystem;
usingSystem.Collections.Generic;
usingSystem.Data;
usingSystem.IO;
usingSystem.Linq;
usingNewtonsoft.Json;
namespaceEasyFrame.Common
{
///
///title调用信息
///
publicclassChartTitle
{
///
///调用名
///
publicstringCallName{get;set;}
///
///标头信息
///
publicListSetNameList{get;set;}
}
publicclassChartName
{
///
///一级标头
///
publicstringName{get;set;}
///
///二级标头
///
publicListChartChildNameList{get;set;}
}
publicclassExcelHelper
{
//
///
///Datatable导出Excel
///
///数据
///表头
///总条数
///保存地址
///
publicstaticMemoryStreamWriteExcel(DataTabledt,Listobjlist,stringfilePath)
{
varlist=objlist.FirstOrDefault(a=>a.CallName=="ccc").SetNameList;
if(!string.IsNullOrEmpty(filePath)&&null!=dt&&dt.Rows.Count>0)
{
XSSFWorkbookbook=newXSSFWorkbook();
NPOI.SS.UserModel.ISheetsheet=book.CreateSheet(dt.TableName);
ICellcell=null;
ICellStylestyle=book.CreateCellStyle();
IFontfont=book.CreateFont();//创建字体样式
IFontfonts=book.CreateFont();//创建字体样式
IFontfontss=book.CreateFont();//创建字体样式
font.Color=NPOI.HSSF.Util.HSSFColor.Red.Index;//设置字体颜色
ICellStylestyles=book.CreateCellStyle();//红色
fonts.Color=NPOI.HSSF.Util.HSSFColor.Green.Index;
ICellStylestyless=book.CreateCellStyle();//绿色
fontss.Color=NPOI.HSSF.Util.HSSFColor.Blue.Index;
ICellStylestylesss=book.CreateCellStyle();//蓝色
styless.SetFont(fonts);
styles.SetFont(font);
stylesss.SetFont(fontss);
style.Alignment=HorizontalAlignment.Center;
NPOI.SS.UserModel.IRowrow1=sheet.CreateRow(0);
NPOI.SS.UserModel.IRowrow2=sheet.CreateRow(1);
varrow=row1;
intnum=0;//记录列
vard=true;//是否第一次加载到二级表单
#region创建表头
//两行单列
for(inti=0;i>(dt.Rows[0][0].ToString());
foreach(varitemindata1)
{
NPOI.SS.UserModel.IRowrows=sheet.CreateRow(clouns+2);
customs=0;
rows.CreateCell(customs).SetCellValue(Convert.ToString(item.No));customs++;
rows.CreateCell(customs).SetCellValue(Convert.ToString(item.LotteryOpenNo));customs++;
for(inti=0;i
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:czq8825#qq.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。