使用NPOI操作Excel
context.Response.ContentType = "application/x-excel"; //设置返回类型
string name = HttpUtility.UrlEncode("用户列表.xls");
context.Response.AddHeader("Content-Disposition", "attachment;filename=" + name);
HSSFWorkbook workbook = new HSSFWorkbook(); //创建 一个 Excel 表
HSSFSheet sheet = workbook.CreateSheet(); //创建 一个表
HSSFRow row = sheet.CreateRow(); //创建 第一行
HSSFRow row2 = sheet.CreateRow(); //创建 第二行
HSSFCell cell = row.CreateCell(, HSSFCell.ENCODING_COMPRESSED_UNICODE); //创建单元格
cell.SetCellValue("ID"); // 第1行第1列值
row.CreateCell(, HSSFCell.ENCODING_COMPRESSED_UNICODE).SetCellValue("姓名"); //第1行第2列值
row.CreateCell(, HSSFCell.ENCODING_COMPRESSED_UNICODE).SetCellValue("年龄"); //第1行第3列值 row2.CreateCell(, HSSFCell.ENCODING_COMPRESSED_UNICODE).SetCellValue(); // 第2行第1列值
row2.CreateCell(, HSSFCell.ENCODING_COMPRESSED_UNICODE).SetCellValue("小高");// 第2行第2列值
row2.CreateCell(, HSSFCell.ENCODING_COMPRESSED_UNICODE).SetCellValue(); // 第2行第3列值
workbook.Write(context.Response.OutputStream); //写入到输出流中
然后在HTML页面中调用 <a href="down.asxh">Excel下载</a>
context.Response.ContentType = "application/x-excel";
string name = HttpUtility.UrlEncode("用户列表.xls");
context.Response.AddHeader("Content-Disposition", "attachment;filename=" + name); HSSFWorkbook workbook = new HSSFWorkbook(); //先创建Excel文件
HSSFSheet sheet = workbook.CreateSheet(); //先创建一张表 using (SqlConnection conn = new SqlConnection("server=.;database=mytest;uid=sa;pwd=gao;"))
{
conn.Open();
IDbCommand cmd = conn.CreateCommand(); //IDbCommand 是一个接口,用 SqlCommand 一样
cmd.CommandText = "select username,passwd from mydo";
IDataReader dr = cmd.ExecuteReader(); //IDataReader 也是个接口,用 SqlDataReader 一样
int rownum = ; //定义一个变量,用来操作行数
while (dr.Read())
{
string UserName =Convert.ToString(dr["username"]); //取得用户名
string Password = Convert.ToString(dr["passwd"]); //取得密码
HSSFRow row = sheet.CreateRow(rownum); //创建一行,以 rownum 为准 row.CreateCell(, HSSFCellType.STRING).SetCellValue(UserName); //第一列为 用户名
row.CreateCell(, HSSFCellType.STRING).SetCellValue(Password); //第二列为 密码
rownum++; //行数变量自增,即可实现自动插入下一行
}
}
workbook.Write(context.Response.OutputStream); //将Excel表写入到输出流中
使用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 ...
随机推荐
- ubuntu下使用脚本交叉编译windows下使用的ffmpeg + X264
这里主要是补充一些遇到的问题和解决方法. 2013-06 下旬 由于项目需要,重新编译ffmpeg+264+其他. 这里使用的环境Ubuntu 13.04,脚本依然是cross_compile_ffm ...
- poj 3469 Dual Core CPU【求最小割容量】
Dual Core CPU Time Limit: 15000MS Memory Limit: 131072K Total Submissions: 21453 Accepted: 9297 ...
- light oj 1297 Largest Box
1297 - Largest Box PDF (English) Statistics Forum Time Limit: 2 second(s) Memory Limit: 32 MB In t ...
- pycharm的使用技巧
本文将持续更新一些关于在使用pycharm的过程中的小技巧: 多行缩进/取消缩进 选中需要更改的代码,按 shift + tab 多行注释/取消注释 选中需要更改的代码,按 ctrl + / 滚轮 ...
- uva 1422 - Processor(二分+优先队列)
题目链接:uva 1422 - Processor 题目大意:有一个机器要处理一些问题,给出这些问题可以开始的时间和必须完成的时间,以及任务的工作量,问说机器必须以最少每秒多少得工作量才能完成这些任务 ...
- iOS 静态库和动态库
这两个东西都是编译好的二进制文件.就是用法不同而已.为什么要分为动态和静态两种库呢?先看下图:
- centos6.6 虚拟机集群搭建
1.centosos6.6下载 windows 64位: thunder://QUFodHRwOi8vbGludXguemh1YW5neGl0b25nLmNvbTo4MDgvMjAxNTAxL0Nlb ...
- @RenderBody()和@RenderSection()
强大的Razor引擎 一.Razor基础简介 Razor采用了cshtml后缀的文件名,截图如下: A. 版面布局 从图上看到,新的视图引擎已经没有了Site.Master这种MasterPage了, ...
- oracle并行模式(Parallel)
1. 用途 强行启用并行度来执行当前SQL.这个在Oracle 9i之后的版本可以使用,之前的版本现在没有环境进行测试.也就是说,加上这个说明,可以强行启用Oracle的多线程处理功能.举例的话,就 ...
- 开启URL伪静态的方法
## 开启URL伪静态的方法.txt# 1. 请确认您服务器的类型. ThinkSNS的伪静态规则支持Apache.IIS.Nginx. 2. 请确认您的服务器支持URL Rewrite(可从服务器提 ...