运用NPOI操作EXCEL
一、引入NPOI程序集
下载地址:http://pan.baidu.com/s/1qWI3Vgo
二、运用NPOI导出成excel文件
protected void btnOutExcel_Click(object sender, EventArgs e)
{
HSSFWorkbook workbook = new HSSFWorkbook();//创建一个工作薄
ISheet sheet1 = workbook.CreateSheet("学员信息页");//创建一个sheet页
IRow rowHeader = sheet1.CreateRow();//创建第一行
//设置表头内容
rowHeader.CreateCell(, CellType.STRING).SetCellValue("ID");//创建第一行第一列的单元格,设定里面的值为ID
rowHeader.CreateCell(, CellType.STRING).SetCellValue("姓名");
rowHeader.CreateCell(, CellType.STRING).SetCellValue("用户名");
rowHeader.CreateCell(, CellType.STRING).SetCellValue("手机号");
rowHeader.CreateCell(, CellType.STRING).SetCellValue("班级");
rowHeader.CreateCell(, CellType.STRING).SetCellValue("创建时间");
//设置数据内容
OpenDB();
string strSql = "select UserId,RealName,UserName,PhoneNum,Phase,CreatedTime from UserInfor";
using (cmd = new SqlCommand(strSql, con))
{
using (read = cmd.ExecuteReader())
{
int i = ;
while (read.Read())
{
i++;
IRow rowData = sheet1.CreateRow(i);
rowData.CreateCell(, CellType.STRING).SetCellValue(read["UserId"].ToString());//创建第一行第一列的单元格,设定里面的值为ID
rowData.CreateCell(, CellType.STRING).SetCellValue(read["RealName"].ToString());
rowData.CreateCell(, CellType.STRING).SetCellValue(read["UserName"].ToString());
rowData.CreateCell(, CellType.STRING).SetCellValue(read["PhoneNum"].ToString());
rowData.CreateCell(, CellType.STRING).SetCellValue(read["Phase"].ToString()); ICellStyle styledate = workbook.CreateCellStyle();
IDataFormat format = workbook.CreateDataFormat();
styledate.DataFormat = format.GetFormat("yyyy\"年\"m\"月\"d\"日\"");
ICell cellInDate = rowData.CreateCell(, CellType.NUMERIC);
cellInDate.CellStyle = styledate;
cellInDate.SetCellValue(read["CreatedTime"].ToString());
}
using (Stream stream = File.OpenWrite("e:/1.xls"))
{
workbook.Write(stream);
}
}
}
}
三、从excel文件里面导出数据
protected void btnFromExcel_Click(object sender, EventArgs e)
{
StringBuilder sb = new StringBuilder();
sb.Append("<table>");
sb.Append("<tr><th>ID</th><th>姓名</th><th>用户名</th><th>手机号</th><th>班级</th><th>创建时间</th></tr>");
using (Stream stream = File.OpenRead("e:/1.xls"))
{
HSSFWorkbook workbook = new HSSFWorkbook(stream);
int j = workbook.GetSheetAt().LastRowNum;
for (int row = ; row <= j; row++)
{
sb.Append("<tr>");
sb.Append(string.Format("<td>{0}</td><td>{1}</td><td>{2}</td><td>{3}</td><td>{4}</td><td>{5}</td>", workbook.GetSheetAt().GetRow(row).GetCell().StringCellValue, workbook.GetSheetAt().GetRow(row).GetCell().StringCellValue, workbook.GetSheetAt().GetRow(row).GetCell().StringCellValue, workbook.GetSheetAt().GetRow(row).GetCell().StringCellValue, workbook.GetSheetAt().GetRow(row).GetCell().StringCellValue, workbook.GetSheetAt().GetRow(row).GetCell().StringCellValue));
sb.Append("</tr>");
}
}
sb.Append("<table>");
Response.Write(sb.ToString());
}
运用NPOI操作EXCEL的更多相关文章
- NPOI操作Excel辅助类
/// <summary> /// NPOI操作excel辅助类 /// </summary> public static class NPOIHelper { #region ...
- NPOI操作excel之写入数据到excel表
在上一篇<NPOI操作excel之读取excel数据>我们把excel数据写入了datatable中,本篇就讲如何把datatable数据写入excel中. using System; u ...
- C#开发中使用Npoi操作excel实例代码
C#开发中使用Npoi操作excel实例代码 出处:西西整理 作者:西西 日期:2012/11/16 9:35:50 [大 中 小] 评论: 0 | 我要发表看法 Npoi 是什么? 1.整个Exce ...
- 用NPOI操作EXCEL关于HSSFClientAnchor(dx1,dy1,dx2,dy2,col1,row1,col2,row2)的参数
2.4.1 用NPOI操作EXCEL关于HSSFClientAnchor(dx1,dy1,dx2,dy2,col1,row1,col2,row2)的参数 NPOI教程:http://www.cnb ...
- C# 如何使用NPOI操作Excel以及读取合并单元格等
C#操作Excel方法有很多,以前用的需要电脑安装office才能用,但因为版权问题公司不允许安装office.所以改用NPOI进行Excel操作,基本上一些简单的Excel操作都没有问题,读写合并单 ...
- 用NPOI操作EXCEL-锁定列CreateFreezePane()
public void ExportPermissionRoleData(string search, int roleStatus) { var workbook = new HSSFWorkboo ...
- .NET 通过 NPOI 操作 Excel
目录 .NET 通过 NPOI 操作 Excel 第一步:通过 NuGet 获取 NPOI 包并引入程序集 第二步:引入 NPOI 帮助类 第三步:在程序中调用相应的方法对数据进行导出导入操作 将 D ...
- 2.6.2 用NPOI操作EXCEL--设置密码才可以修改单元格内容
2.6.2 用NPOI操作EXCEL--设置密码 有时,我们可能需要某些单元格只读,如在做模板时,模板中的数据是不能随意让别人改的.在Excel中,可以通过“审阅->保护工作表”来完 ...
- 使用NPOI操作Excel文件及其日期处理
工作中经常遇到需要读取或导出Excel文件的情况,而NPOI是目前最宜用.效率最高的操作的Office(不只是Excel哟)文件的组件,使用方便,不详细说明了. Excel工作表约定:整个Excel表 ...
- C#通过NPOI操作Excel
参考页面: http://www.yuanjiaocheng.net/webapi/create-crud-api-1-post.html http://www.yuanjiaocheng.net/w ...
随机推荐
- Javascript高级篇-Function对象
1.引入 1.1Function是基于原型的对象 2.创建Function对象 2.1 var myFun = new Function("参数一","参数二" ...
- Simulator模拟器 硬件键盘不能输入
快捷键: Command + Shift +K
- Webservice服务中如何保持Session
问题一:webservice服务中如果保持Session 调用Session 对于Web Service,每个方法的调用都会启动一个Session,可以用下面的方法来使多个调用在同一个Session里 ...
- 利用procdump+Mimikatz 绕过杀软获取Windows明文密码(转)
Mimikatz现在已经内置在Metasploit’s meterpreter里面,我们可以通过meterpreter下载.但是你如果觉得还要考虑杀毒软件,绑定payload之类的东西太过复杂,我们可 ...
- Educational Codeforces Round 1 D. Igor In the Museum bfs 并查集
D. Igor In the Museum Time Limit: 20 Sec Memory Limit: 256 MB 题目连接 http://codeforces.com/contest/598 ...
- Codeforces Round #278 (Div. 1) A. Fight the Monster 暴力
A. Fight the Monster Time Limit: 20 Sec Memory Limit: 256 MB 题目连接 http://codeforces.com/contest/487/ ...
- 使用DataSet Datatable 更新数据库的三种方式
1:自动生成命令的条件 CommandBuilder 方法a)动态指定 SelectCommand 属性b)利用 CommandBuilder 对象自动生成 DataAdapter 的 DeleteC ...
- c#匿名类 anonymous学习
感谢http://blog.csdn.net/jjx0224/article/details/5887589 感谢http://hi.baidu.com/guodong828/blog/item/cc ...
- 不用submit 同样实现button 点击enter键进行提交
$(function(){ document.onkeydown = function (e) { var theEvent = window.event || e; var code = theEv ...
- 深度学习论文笔记-Deep Learning Face Representation from Predicting 10,000 Classes
来自:CVPR 2014 作者:Yi Sun ,Xiaogang Wang,Xiaoao Tang 题目:Deep Learning Face Representation from Predic ...