关于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))
最新文章
- BLOB
- AutoMapper使用
- Ubuntu下VIM的安装和基本用法
- Count and Say [LeetCode 38]
- px和em之间的转换
- swift 关于delegate
- Server.HTMLEncode用法
- Linux_Cytoscape
- 使用 Laravel 实现微型博客系统
- app后端设计(8)-- 数据库分表
- yamux多路复用的使用例子
- 【转】如何修改 video 样式
- Angular ngRepea
- python中raise的用法
- Python 中docx转pdf
- Asp.net MVC4 记录在线用户数及登录时长
- 软工网络15团队作业4-DAY6
- Spring构造方法注入类型歧义
- 以源码编译的方式安装PHP与php-fpm
- Spring Data JPA 参考指南 中文版