视频1 视频21 视频41 视频61 视频文章1 视频文章21 视频文章41 视频文章61 推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37 推荐39 推荐41 推荐43 推荐45 推荐47 推荐49 关键词1 关键词101 关键词201 关键词301 关键词401 关键词501 关键词601 关键词701 关键词801 关键词901 关键词1001 关键词1101 关键词1201 关键词1301 关键词1401 关键词1501 关键词1601 关键词1701 关键词1801 关键词1901 视频扩展1 视频扩展6 视频扩展11 视频扩展16 文章1 文章201 文章401 文章601 文章801 文章1001 资讯1 资讯501 资讯1001 资讯1501 标签1 标签501 标签1001 关键词1 关键词501 关键词1001 关键词1501 专题2001
C#使用Aspose.Cells导出excel
2020-11-27 22:34:41 责编:小采
文档


C# winform导出excel可以使用 Microsoft.Office.Interop.Excel.dll或者Aspose.Cells.dll以及其他方法。Microsoft.Office.Interop.Excel.dll导出速度慢,不适用于数据量大情况。Aspose.Cells.dll到处速度很快。由于Aspose.Cells.dll本身收费,所以需要加载破解证书。

Aspose.Cells简介:Aspose.Cells是一款功能强大的Excel文档处理和转换控件,开发人员和客户电脑无需安装Microsoft Excel也能在应用程序中实现类似Excel的强大数据管理功能,支持所有Excel格式类型的操作,在没有Microsoft Excel的环境下,用户也可为其应用程序嵌入类似Excel的强大数据管理功能。

C#中winform使用spose.Cells导出excel的方法:

1.下载aspose.Cells.dll以及破解证书:下载地址

2.引用右键添加引用,点击浏览,找到下载的dll文件(最好复制到工程目录),选择Aspose.Cells引用

3.工程右键添加文件夹ASPOSE,并右键添加“现有项”aspose.Cells.dll以及破解证书。分别右键aspose.Cells.dll以及license.lic选择属性,始终复制到输出目录。

4.

添加using

using Aspose.Cells; 

新建DataTable

DataTable dt1 = new DataTable();

初始化表头:

dt1.Columns.Add(new DataColumn("表头1", typeof(string)));
dt1.Columns.Add(new DataColumn("表头2", typeof(string)));
dt1.Columns.Add(new DataColumn("表头3", typeof(string)));
dt1.Columns.Add(new DataColumn("表头4", typeof(string)));

添加数据(可以放到循环体)

DataRow rowData = dt1.NewRow();
rowData["表头1"] = "1"
rowData["表头2"] = "2";
rowData["表头3"] = "3";
rowData["表头4"] = "4";
dt1.Rows.Add(rowData);//新增一行数据

将DataTabel写入excel

ExportExcelWithAspose(dt1, "D:\\设备数据.xlsx");

函数实现:

public static bool ExportExcelWithAspose(System.Data.DataTable data, string filepath)
 {
 try
 {
 if (data == null)
 {
 MessageBox.Show("数据为空");
 return false;
 }
 Aspose.Cells.License li = new Aspose.Cells.License();
 li.SetLicense("ASPOSE/License.lic");//破解证书
 
 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; 
 
 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); //添加样式
 }
 //生成数据行 
 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); //添加样式
 }
 }
 sheet.AutoFitColumns(); //自适应宽
 book.Save(filepath); //保存
 MessageBox.Show("Excel成功保存到D盘!!!");
 GC.Collect();
 }
 catch (Exception e)
 {
 return false;
 }
 
 return true;
 }

下载本文
显示全文
专题