使用NPOI来操纵Office

NPOI是开源的操作office文档的库,是POI的.net版本。

(题外话:除了NPOI,另一个用得比较多的开源库ClosedXML也非常不错,使用方法见Github上(链接)。)

首先加入NPOI程序集的引用,如下图所示:使用NPOI来操纵Office_第1张图片

创建XLS格式excel文档:

HSSFWorkbook book=new HSSFWorkbook();

ISheet=book.CreateSheet("Sheet1");

FileStream file=new FileStream("mysheet.xls",FileMode.Create);

book.Write(file);

file.Close();

创建XLSX格式excel文档:

XSSFWorkbook book=new HSSFWorkbook();

ISheet sheet=book.CreateSheet("Sheet1");

FileStream file=new FileStream("mysheet.xls",FileMode.Create);

book.Write(file);

file.Close();

 

补充:

工作表中的最大行编号(注:没找到最大列编号的属性):

sheet.LastRowNum

工作表某一行中的最大列编号:

row.LastCellNum或sheet.GetRow(rowNumber).LastCellNum

 

在使用NPOI时,需要注意与Microsoft.Offfice.Interop.Excel中存在很大的区别。其中包括:在NPOI中,行号和列号均从0开始,而Microsoft.Offfice.Interop.Excel中的行号和列号均从1开始。

 

可以发现,xls和xlsx版本的类名是不同的,分别为HSSFWorkbook和XSSFWorkbook.

关于NPOI的详细用法,参见

NPOI使用手册  (注意:该手册中有些写法在当前版本的NPOI中不行,用接口来引用)

NPOI 2.0 使用教程详解

你可能感兴趣的:(Office开发)