转载:NPOI导出到Excel表格
NPOI开发包下载:http://pan.baidu.com/share/link?shareid=4025220936&uk=2837994235
需要命名空间
using NPOI.HSSF.UserModel;
using NPOI.SS.UserModel;
先简单介绍下NPOI,Workbook工作簿,Sheet页,row行,cell:单元格;这些名字都是有用的,
首先为什么要用的NPOI呢?这是因为,它效率比较高点,而且可以完全脱离Excel表格软件直接可以导出,方便吧,以前的(就不解释了)需要本地安装Excel表格软件,需要软件支持,版本不同还不行,所以,很受限制的,这个就不需要了,导入NPOI.dll程序集,就可以对想要的数据导出格式为.xls的了,不需要本地另外安装,方便多了,好了,不多说了,看例子:
HSSFWorkbook hssfworkbook = new HSSFWorkbook();//实例化一个表格
ISheet sheet1 = hssfworkbook.CreateSheet("俺的第一页");//创建Excel的一页
IRow rowHeader = sheet1.CreateRow(0);//创建表头,就是Excel中的第一行
rowHeader.CreateCell(0, CellType.STRING).SetCellValue("姓名");//Excel中的第一行
rowHeader.CreateCell(1, CellType.STRING).SetCellValue("年龄");
rowHeader.CreateCell(2, CellType.STRING).SetCellValue("性别");
IRow row2 = sheet1.CreateRow(1);//从Excel第二行,就开始是真正的数据啦
row2.CreateCell(3, CellType.STRING).SetCellValue("啦啦啦");//这是在Excel中的第1行第3列
using (Stream stream = File.OpenWrite("d:/1.xls"))
{
hssfworkbook.Write(stream);
}
来看看导出的是什么样子的?----
//这里面有点注意的是:日期格式的比较特殊,需要另加处理,
//日期类型,日期类型比较特殊
//row.CreateCell(4, CellType.NUMERIC).SetCellValue(2013-10-10);//这样是不行的,好,继续,底下多弄几条数据好好感受下
ICellStyle styledate = hssfworkbook.CreateCellStyle();//指定格式
IDataFormat format = hssfworkbook.CreateDataFormat();
//格式具体有哪些请看单元格右键中的格式,有说明
styledate.DataFormat = format.GetFormat("yyyy\"年\"m\"月\"d\"日\"");
List<ICell> cellInDate = new List<ICell>();
cellInDate.Add(row.CreateCell(8, CellType.NUMERIC));//出生日期
cellInDate.Add(row.CreateCell(9, CellType.NUMERIC));//入职日期
cellInDate.Add(row.CreateCell(18, CellType.NUMERIC));//合同起始时间
cellInDate.Add(row.CreateCell(19, CellType.STRING));//合同结束时间
for (int j = 0; j < cellInDate.Count; j++)
{
cellInDate[j].CellStyle = styledate;
if (j == 0)
{
cellInDate[j].SetCellValue(employee.BirthDay);//出生日期,这些都是自己定义的,员工的出生日期
}
else if (j == 1)
{
cellInDate[j].SetCellValue(employee.InDate);//入职日期
}
else if (j == 2)
{
cellInDate[j].SetCellValue(employee.ContractStartDay);//合同起始时间
}
else if (j == 3)
{
cellInDate[j].SetCellValue(employee.ContractEndDay);//合同结束时间
}
转载:NPOI导出到Excel表格的更多相关文章
- Python实现数据库一键导出为Excel表格
依赖 Python2711 xlwt MySQLdb 数据库相关 连接 获取字段信息 获取数据 Excel基础 workbook sheet 案例 封装 封装之后 测试结果 总结 数据库数据导出为ex ...
- 关于 NPOI 导出的 Excel 出现“部分内容有问题” 的解决方法
近期发现使用 NPOI 导出的 Excel 文件,有部分用户反映在打开时报错,测试了一下,发现在低版本的 Office 中(2003版,配合2007格式兼容包)打开正常,但在高版本 Office 中, ...
- java连接MongoDB查询导出为excel表格
背景 因为项目需求.每一个星期须要统计每一个公众号7天的訪问数,月底就须要统计一个月的訪问数,40多个公众号.每次手动统计都须要花费1个小时,总之是一项无技术耗时耗神的手工活. 于是.想写个程序来统计 ...
- C#调用NPOI组件读取excel表格数据转为datatable写入word表格中并向word中插入图片/文字/书签 获得书签列表
调用word的com组件将400条数据导入word表格中耗时10分钟简直不能忍受,使用NPOI组件耗时4秒钟.但是NPOI中替换书签内容的功能不知道是不支持还是没找到. 辅助类 Excel表格数据与D ...
- 用Java导出为excel表格
导出的是最基础的excel表格,没有任何样式. <input type="button" value="输出到Excel" onclick='output ...
- 如何使用NPOI 导出到excel和导入excel到数据库
近期一直在做如何将数据库的数据导出到excel和导入excel到数据库. 首先进入官网进行下载NPOI插件(http://npoi.codeplex.com/). 我用的NPOI1.2.5稳定版. 使 ...
- 使用Aspose插件将程序中的表格,导出生成excel表格
http://www.cnblogs.com/lanyue52011/p/3372452.html这个是原文地址 /// <summary> /// 点击按钮,将内存表导出excel表格! ...
- mysql数据库表格导出为excel表格
在本地数据库中操作如下: 由于excel表格的编码是GBK,所以导出时要加一个设置字符编码: select * from 某个表 into outfile 'd:/文件名.xls' CHARACTER ...
- asp.net数据导出到excel表格,并设置表格样式
1.首先在项目中添加引用
随机推荐
- delphi 从TWebBrowser WebBrowser得到全部html源码
delphi 从TWebBrowser WebBrowser得到全部html源码 http://blog.csdn.net/webouse/article/details/3912174 网上查询 ...
- Content Providers详解
今天仔细阅读了一遍Content Providers的官方API文档,总结了一下Android中Content Providers的用法. 各种类型的Content Provider对一个结构化的数据 ...
- 安装mysql之后,存入中文出现乱码 02
现在出现这个问题,将编码字符串改成utf8 之后 数据表 还是不能存储中文. 看如下两张图,应该会有启发: 这下应该明白了吧.
- hdu 4768 Flyer 二分
思路:由于最多只有一个是奇数,所以二分枚举这个点,每次判断这个点的左边区间段所有点的和作为 二分的依据. 代码如下: #include<iostream> #include<cstd ...
- UVA 11181 dfs 概率
N friends go to the local super market together. The probability of their buying something from them ...
- BZOJ 1452: [JSOI2009]Count 二维树状数组
1452: [JSOI2009]Count Description Input Output Sample Input Sample Output 1 2 HINT Source 题解:设定C[101 ...
- 读取excel文件内容代码
最近工作需要批量添加映射excel文件字段的代码 于是通过读取excel2007实现了批量生成代码,记录下代码 需要引入poi的jar包 import java.awt.List; import j ...
- Jenkins+Maven+Git CI环境搭建手册
Jenkins+Maven+Git CI环境搭建手册 环境: OS:Linux version 2.6.32-220.23.2.ali878.el6.x86_64 (ads@kbuild) (gcc ...
- 定制CentOS (Redhat AS 5.1)安装盘
CentOS(Redhat)提供了一套完整的自动化安装机制,利用该机制,我们可以自己定制无人值守的自动安装光盘,也可以进行系统裁减,甚至可以以CentOS为基础制作自己软件系统的系统安装盘.以下全部内 ...
- SPRING IN ACTION 第4版笔记-第十一章Persisting data with object-relational mapping-006Spring-Data的运行规则(@EnableJpaRepositories、<jpa:repositories>)
一.JpaRepository 1.要使Spring自动生成实现类的步骤 (1)配置文件xml <?xml version="1.0" encoding="UTF- ...