.net 操作excel
程序员文章站
2022-06-28 20:18:34
.net 操作excel的常用组件:EPPlus,NPOI 1.NPOI,即POI的.NET版本(POI是一套用Java写成的库,能够帮助开发者在没有安装微软Office的情况下读写Office文件,格式包括xls, doc, ppt等。) 2.EPPlus, Epplus是一个使用Open Off ......
.net 操作excel的常用组件:epplus,npoi
1.npoi,即poi的.net版本(poi是一套用java写成的库,能够帮助开发者在没有安装微软office的情况下读写office文件,格式包括xls, doc, ppt等。)
2.epplus, epplus是一个使用open office xml文件格式,能读写excel的第三方插件。
先介绍几个基础的类:
(1)excelpackage excelpackage是epplus的入口类,解析一个excel文件,该类实现了idisposable接口,可以使用using进行对象释放。
常用构造函数:
public excelpackage(); public excelpackage(fileinfo newfileinfo);
public excelpackage(stream newstream);
using (excelpackage package = new excelpackage(new fileinfo(path);))
{
package.save();//保存后 epplus组件才会将excel按初始化传入的路径在本地磁盘上进行保存。
}
(2)excelworkbook excelworkbook类表示了一个excel文件。
(3)excelworksheet 是excelworkbook 的属性,对应每一个不同的sheet。
给excel文件添加多个sheet
list<excelworksheet> ews= new list<excelworksheet>();
ews.add(package.workbook.worksheets.add("sheetname1"));//sheet1
ews.add(package.workbook.worksheets.add("sheetname2"));//sheet2
sheet的一些属性
ews[0].row(1).height = 24;//行高
ews[0].row(1).customheight = true;//自动调整行高
ews[0].column(2).autofit(20);//列宽(epplus的所有行列数都是以1开始的)
ews[0].column(2).width = 20;//列宽
ews[0].cells.autofitcolumns();//自动列宽
ews[0].cells .style .shrinktofit = true;//单元格自适应
ews[0].cells.style.wraptext = true;//自动换行
ews[0].hidden = eworksheethidden.hidden;//隐藏sheet
ews[0].protection.isprotected = true;//锁定sheet,不可更改
(4)excelrange类 sheet内自定义区域。
定义区域
excelrange range1 = wss[c].cells[2, 1];// row, col
excelrange range2 = wss[c].cells[1, 1,3,3];//fromrow, fromcol, torow, tocol
range的一些属性
range.style.border.left.style = excelborderstyle.thin;//边框
range.style.font.color.setcolor(system.drawing.color.red);//字体颜色
range.value = "111";//区域的值
range.merge = true;//合并
range.style.wraptext = true;//自动换行
range.autofitcolumns(10);//列宽
range.style.horizontalalignment = excelhorizontalalignment.center;//对齐方式
推荐阅读