使用NPOI进行Excel操作
一、NPOI组件导入
右键项目菜单,“管理NuGet程序包”

直接搜索“NPOI”即会出现列表,下载第一个进行安装即可

安装完成后项目引用会出现以下几项

二、基础使用
添加引用
using NPOI.HPSF;
using NPOI.HSSF.UserModel;
using NPOI.SS.UserModel;
Excel操作开始
HSSFWorkbook hssfworkbook = new HSSFWorkbook();//先创建Workbook
ISheet sheet= hssfworkbook.CreateSheet("Sheet1");//创建sheet页
IRow row1=sheet.CreateRow();//创建行
row1.CreateCell().SetCellValue("test");//创建单元格并设置值
文件导出
FileStream file = new FileStream(sFilePath, FileMode.Create);
hssfworkbook.Write(file);
file.Close();
三、样式及单元格操作
//设置列宽(字符宽度)
sheet.SetColumnWidth(, * );//第一列,10个字符宽度 //设置行高
row.HeightInPoints = ;//高度(像素) //设置网格的默认行高和列框
sheet.DefaultColumnWidth=*;
sheet.DefaultRowHeightInPoints = ;
//设置单元格样式 //样式创建
ICellStyle style = hssfworkbook.CreateCellStyle();
style.Alignment = NPOI.SS.UserModel.HorizontalAlignment.Center;//文字横向居中
style.VerticalAlignment = VerticalAlignment.Center;//文字纵向居中
IFont font = hssfworkbook.CreateFont();//字体
font.FontHeight = * ;
style.SetFont(font); ICell cell = row.Cells[];//获取单元格对象
cell.CellStyle = style;//绑定样式
单元格合并
//单元格合并
sheet.AddMergedRegion(new NPOI.SS.Util.CellRangeAddress(,,,));//合拼了A1到I1
文件的详细信息设置
//设置文件的详细信息
DocumentSummaryInformation dsi = PropertySetFactory.CreateDocumentSummaryInformation();
dsi.Company = "公司名称";//公司
SummaryInformation si = PropertySetFactory.CreateSummaryInformation();
si.Subject = "主题";//主题
hssfworkbook.DocumentSummaryInformation = dsi;
hssfworkbook.SummaryInformation = si;
四、Excel文件读取
//根据路径获取读取xls文件
HSSFWorkbook wb = new HSSFWorkbook(new FileStream(@"C:\Users\Yc\Desktop\text.xls", FileMode.Open));
//获取sheet对象
ISheet sheet1 = wb.GetSheet("Sheet1");
//获取行
IRow row = sheet1.GetRow(0);
//获取单元格
ICell cell = row1.GetCell(0);
读取完毕之后,按需操作内容即可
PS:最近用上了,想想还是记录一下的好
使用NPOI进行Excel操作的更多相关文章
- c# .Net :Excel NPOI导入导出操作教程之读取Excel文件信息及输出
c# .Net :Excel NPOI导入导出操作教程之读取Excel文件信息及输出 using NPOI.HSSF.UserModel;using NPOI.SS.UserModel;using S ...
- Npoi导入导出Excel操作
之前公司的一个物流商系统需要实现对订单的批量导入和导出,翻阅了一些资料,最后考虑使用NPOI实现这个需求. 在winform上面实现excel操作:http://www.cnblogs.com/Cal ...
- NPOI对Excel的操作(Sheet转DataTable、List<T>)
通过NPOI对Excel进行操作,这里主要是读取的操作.封装到ExcelHelper操作类中. 1 using System.Collections.Generic; 2 using NPOI.HSS ...
- .Net Excel操作之NPOI(二)常用操作封装
一.Excel数据导出常用操作 1.指定表头和描述 2.指定数据库中读出的数据集合 二.ExcelExport封装 /// <summary> /// Excel常用的表格导出逻辑封装 / ...
- .Net Excel操作之NPOI(一)简介
一.NPOI简介 NPOI是一个开源项目,可以读/写xls,doc,ppt文件,有着广泛的应用. 使用NPOI能够帮助开发者在没有安装微软Office的情况下读写Office 97-2003的文件,支 ...
- JS异步上传Excel 并使用NPOI进行读写操作
实现功能 导入——客户端使用 ajaxfileupload.js 插件实现Excel的异步上传,并在服务端解析成JSON字符串返回页面 导出——将页面中的grid表拼接成JSON串上传至服务器,在服务 ...
- 用NPOI、C#操作Excel表格生成班级成绩单
在C#中利用NPOI操作Excel表格非常方便,几乎上支持所有的Excel表格本身所有的功能,如字体设置.颜色设置.单元格合并.数值计算.页眉页脚等等. 这里准备使用NPOI生成一个班级成绩单Exce ...
- C#NPOI对Excel的操作、导入导出时异常处理、最全的NPOI资料在这里~
一.Excel理论知识 最新版NPOI2.4.1链接:https://pan.baidu.com/s/1iTgJi2hGsRQHyw2S_4dIUw 提取码:adnq • 整个Excel表格叫做工作 ...
- NPOI - .NET Excel & Word操作组件
概要 NPOI 是 POI 项目的 .NET 版本.POI是一个开源的Java读写Excel.WORD等微软OLE2组件文档的项目. NPOI是构建在POI 3.x版本之上的,它可以在没有安装Offi ...
随机推荐
- 深度学习中loss总结
一.分类损失 1.交叉熵损失函数 公式: 交叉熵的原理 交叉熵刻画的是实际输出(概率)与期望输出(概率)的距离,也就是交叉熵的值越小,两个概率分布就越接近.假设概率分布p为期望输出,概率分布q为实际输 ...
- 经典算法(一) top k
问题:1亿数据中,找出最大的k个数,要求使用内存不超过1m (延伸问题:1亿数据中,找出重复出现次数最多的k个,要求使用内存不超过1m 等) 分析: 1亿数字(int)占内存:100000000 * ...
- zookeeper(一) 原理
参考文档:http://cailin.iteye.com/blog/2014486/ http://www.uml.org.cn/zjjs/201707282.asp?artid=19686 一.zo ...
- [Gamma阶段]第七次Scrum Meeting
Scrum Meeting博客目录 [Gamma阶段]第七次Scrum Meeting 基本信息 名称 时间 地点 时长 第七次Scrum Meeting 19/06/3 大运村寝室6楼 25min ...
- [Beta]Scrum Meeting#6
github 本次会议项目由PM召开,时间为5月11日晚上10点30分 时长15分钟 任务表格 人员 昨日工作 下一步工作 木鬼 撰写博客整理文档 撰写博客整理文档 swoip 改进界面 为适应新功能 ...
- JavaScript初探系列(五)——this指向
一.涵义 this关键字是一个非常重要的语法点.毫不夸张地说,不理解它的含义,大部分开发任务都无法完成.this可以用在构造函数之中,表示实例对象.除此之外,this还可以用在别的场合.但不管是什么场 ...
- RNN 一对一
https://blog.csdn.net/owenfy/article/details/80022586
- MySQL索引原理(一)
MySQL索引原理 索引目的 索引的目的在于提高查询效率,可以类比字典,如果要查“mysql”这个单词,我们肯定需要定位到m字母,然后从下往下找到y字母,再找到剩下的sql.如果没有索引,那么你可能需 ...
- Vintage_坏客户定义
python信用评分卡建模(附代码,博主录制) https://study.163.com/course/introduction.htm?courseId=1005214003&utm_ca ...
- promise 和 async await比较
async搭配await是ES7提出的,它的实现是基于Promise.这里使用它对比Promise的用法,这里只是简单的适合日常业务的使用场景. async.await是ES7中的提案,通过同步方 ...