基础复习 关于NPOI

1,使用using(声明对象);using让局部对象失效,使用它时,要么其包含的类实现IDispose接口,要么他的父类实现IDispose接口。

2,模糊查询:%代表0到多个任意字符;_代表一个任意字符;[]中间放一个范围;^放在[]中代表非(不在此范围)

3,NPOI实现Excel导出导入:

导出到excel:::   (1)数据库中的表用SqlDataReader读出来存到其对象中

                   (2)创建IWorkbook接口的对象wk,并给其一个文件流参数--FileStream fsRead=File.O
penRead();   //工作簿

                   (3)wk.NumberofSheet代表工作表数量 ;  wk.GetSheetAt(索引)获取表;  创建ISheet接口的对象 sheet        ISheet sheet = wk.CreateSheet("tb_user");   //工作表

                   (4)sheet.LastRowNum代表最后一行的索引值;创建IRow 对象

                   (5)然而row.LastCellNum代表最后一列的列索引值+1;创建ICell对象

           注意:数据库有空值的字段,在写入Excel时要做出判断

                   方法一:if(!=null)

                             {

                                     row.CreateCell(3).SetCellValue(headMap);//如果不为空,则使用单元格。(另外一个意思就是  如果为空了,那么此单元格跳过不赋值,就是未使用)

                             }

                    方法二:if(headMap)

                             {

                                     //单元格对象.空单元格

                                      cellHeadMap.SetCellType(CellType.BLANK);

                             }

                                  else
                             {
                                       cellHeadMap.SetCellValue(headMap);
                             }

                          (6)最后执行FileStream fsWrite=File.OpenWrite("文件名")

                                                    wk.Write(文件流对象fsWrite)

excel导入到表:::

                 (1)读取Excel

                   (2) IRow row = sheet.GetRow(i);

                   (3) string name = row.GetCell(1).StringCellValue;/////示例取值/////

                   (4)判断当单元格中不为空或者单元格格式不为Blank时,正常赋值,否则赋值为null

                   (5)当有值为null时,并不能把null插入到数据库,要插入DBNull.Value。//////new SqlParameter("@HeadMap",headMap==null?DBNull.Value:(object)headMap);//////

 注意:://当插入日期的时候
            //Excel日期转到数据库时,要用DateTime.FromOADate;
            //Excel的控制插入数据库  要用DBNull.Value
            //onject(DateTime.FromOADate((double)lockDate))

 

你可能感兴趣的:(poi)