天天看点

C#利用NPOI对Excel进行基本操作

C#利用NPOI操作Excel详解

一、 下载npoi控件,并进行引用。

1.下载地址:

2.引用npoi

(1)、下载后的npoi包括5个dll文件:

C#利用NPOI对Excel进行基本操作

(2)、下载完成之后首先创建一个控制台程序,然后在视图里面,调出解决方案资源管理器,点击“引用”>>“添加引用”>>“浏览”>>找到自己所下载的NPOI文件夹,添加上文中的5个动态库。

C#利用NPOI对Excel进行基本操作

二、 创建新的Excel文件(利用npoi)

  1. 引用空间(在编写代码之前添加以下头文件)
    C#利用NPOI对Excel进行基本操作
  2. 创建工作簿(workbook)和表(sheet)
  3. HSSFWorkbook wk = new HSSFWorkbook();
  4. //创建一个Sheet //创建一个Sheet

    ISheet sheet = wk.CreateSheet(“例子”);

3.创建行和单元格(row:行,cell:列)

5. //在第一行创建行

6. IRow row = sheet.CreateRow(0);

  1. //在第一行的第一列创建单元格
  2. ICell cell = row.CreateCell(0);

注意:在NPOI里,IRow和ICell是表格结构里的基本元素,必须先通过Create函数创建后才能使用,不然会报错。还有当打开一个已有表的时候,要重新创建基本元素。

知识点:

因为在excel里,在某个位置有没有单元格,和单元格里有没有值,这两个是分开保存的。“是否有单元格”也是需要保存的信息之一,也同样占用文件大小。单元格是一个无形的容器,必须首先有容器,才能往里头存放值。

4.对单元格进行赋值

cell.SetCellValue(“所赋的值”);

注意:SetCellValue的重载中支持

• bool

• DateTime

• double

• string

• IRichTextString

这几种格式的参数,但是不像Excel COM一样支持object。所以赋值的时候必须先做好类型转换。

11. 保存所创建的excel表

  1. //打开一个xls文件,如果没有则自行创建,如果存在myxls.xls文件则在创建时不要打开该文件
  2. using (FileStream fs = File.OpenWrite(“d:\excel.xls”))
  3. {
  4. wk.Write(fs);//向打开的这个xls文件中写入并保存。
               
  5. }

源码示例:

C#利用NPOI对Excel进行基本操作