直接上代码,这个是一个在webFrom中的例子,要请求的页面是ashx

 public void ExportVisaFeeAll(HttpContext context)
{
try
{
string title ="签证费用表"; string[] idArray = context.Request["idStr"].ToString().Split(',');
DateTime startDate = DateTime.Parse(context.Request["startDate"]);
DateTime endDate = DateTime.Parse(context.Request["endDate"]).AddDays(); string unit = context.Request.QueryString["unit"];
string groupname = context.Request.QueryString["groupname"];
string countryname = context.Request.QueryString["countryname"];
string Member = context.Request.QueryString["Member"];
string LetterNumbers = context.Request.QueryString["LetterNumbers"];
List<VisaFeeMain> visaFees = new OilDigital.CGGL.Web.VisaApply.VisaApplyProcess().GetVisaFeeByQueryString(startDate, endDate, unit, groupname, countryname, Member, LetterNumbers);
for (int i = visaFees.Count-; i >=; i--)
{
bool flag = true;
for (int j = ; j < idArray.Length; j++)
{
if (visaFees[i].Id.ToString() == idArray[j])
{
flag = false;
break;
}
}
if (flag)
{
visaFees.RemoveAt(i);
}
}
HSSFWorkbook wb = new HSSFWorkbook();//创建工作薄
HSSFSheet sheet = (HSSFSheet)wb.CreateSheet(title); //创建工作表
HSSFRow row_Title = (HSSFRow)sheet.CreateRow(); //创建列头行
row_Title.HeightInPoints = 19.5F; //设置列头行高
string[] titleStr = { "批件文号", "申办国家(地区)", "总金额", "人员名单", "总人数", "备注", "创建时间", "创建人"};
//设置列宽
for (int i = ; i < titleStr.Length; i++)
{
sheet.SetColumnWidth(i, * ); }
//设置列样式
HSSFCellStyle cs_Title = (HSSFCellStyle)wb.CreateCellStyle(); //创建列头样式
cs_Title.Alignment = NPOI.SS.UserModel.HorizontalAlignment.Center; //水平居中
cs_Title.VerticalAlignment = NPOI.SS.UserModel.VerticalAlignment.Center; //垂直居中
HSSFFont cs_Title_Font = (HSSFFont)wb.CreateFont(); //创建字体
cs_Title_Font.FontHeightInPoints = ; //字体大小
cs_Title_Font.Boldweight = (short)FontBoldWeight.Bold;
cs_Title.SetFont(cs_Title_Font); //将字体绑定到样式
//填充列头内容
for (int i = ; i < titleStr.Length; i++)
{
HSSFCell cell_Title = (HSSFCell)row_Title.CreateCell(i); //创建单元格
cell_Title.CellStyle = cs_Title; //将样式绑定到单元格
cell_Title.SetCellValue(titleStr[i]);
}
//设置单元格样式
HSSFCellStyle cs_Content = (HSSFCellStyle)wb.CreateCellStyle(); //创建列头样式
cs_Content.Alignment = NPOI.SS.UserModel.HorizontalAlignment.Center; //水平居中
cs_Content.VerticalAlignment = NPOI.SS.UserModel.VerticalAlignment.Center; //垂直居中
//填充单元格
int r = ;
for (r = ; r < visaFees.Count; r++)
{
int i = r;
HSSFRow row = (HSSFRow)sheet.CreateRow(i + );
row.HeightInPoints = ;
string[] arr = { visaFees[i].LetterNumbers.ToString(), visaFees[i].EmbassyNames, visaFees[i].Fee, visaFees[i].Names, visaFees[i].TotalAmount.ToString(), visaFees[i].Memo, visaFees[i].CreatedTime.ToString("yyyy-MM-dd"), visaFees[i].CreatedBy };
for (int j = ; j < arr.Length; j++)
{
HSSFCell cell = (HSSFCell)row.CreateCell(j); //创建单元格
cell.CellStyle = cs_Content;
cell.SetCellValue(arr[j]); }
} HttpResponse httpResponse = HttpContext.Current.Response;
httpResponse.Clear();
httpResponse.Buffer = true;
//httpResponse.Charset = Encoding.UTF8.BodyName;
httpResponse.AppendHeader("Content-Disposition", "attachment;filename=" + HttpUtility.UrlEncode("签证费用.xls"));
httpResponse.ContentEncoding = System.Text.Encoding.UTF8;
httpResponse.ContentType = "application/vnd.ms-excel; charset=UTF-8";
wb.Write(httpResponse.OutputStream);
httpResponse.End();
}
catch (Exception ex)
{ throw new Exception(ex.Message);
}
}

NPOI excel导出快速构建的更多相关文章

  1. winform NPOI excel 导出并选择保存文件路径

    public void ExcelOp(DataGridView gdv,ArrayList selHead) { if (selHead.Count==0) { MessageBox.Show(&q ...

  2. 并发编程概述 委托(delegate) 事件(event) .net core 2.0 event bus 一个简单的基于内存事件总线实现 .net core 基于NPOI 的excel导出类,支持自定义导出哪些字段 基于Ace Admin 的菜单栏实现 第五节:SignalR大杂烩(与MVC融合、全局的几个配置、跨域的应用、C/S程序充当Client和Server)

    并发编程概述   前言 说实话,在我软件开发的头两年几乎不考虑并发编程,请求与响应把业务逻辑尽快完成一个星期的任务能两天完成绝不拖三天(剩下时间各种浪),根本不会考虑性能问题(能接受范围内).但随着工 ...

  3. 使用NPOI实现简单的Excel导出功能

    [1]NPOI是啥? NPOI是指构建在POI 3.x版本之上的一个程序,NPOI可以在没有安装Office的情况下对Word或Excel文档进行读写操作. POI是一个开源的Java读写Excel. ...

  4. c# .Net :Excel NPOI导入导出操作教程之读取Excel文件信息及输出

    c# .Net :Excel NPOI导入导出操作教程之读取Excel文件信息及输出 using NPOI.HSSF.UserModel;using NPOI.SS.UserModel;using S ...

  5. NPOI 导入导出excel 支持 03 07

    因为微软的office成本太高了,所以开发项目的时候电脑上没安装office,而是安装了wps.但开发语言用的是C#,所以直接调用微软的office组件是很方便的,但一方面慢,一方面成本高,所以从网上 ...

  6. NPOI导入导出EXCEL通用类,供参考,可直接使用在WinForm项目中

    以下是NPOI导入导出EXCEL通用类,是在别人的代码上进行优化的,兼容xls与xlsx文件格式,供参考,可直接使用在WinForm项目中,由于XSSFWorkbook类型的Write方法限制,Wri ...

  7. 使用NPOI完成导出Excel文件

    参考网址:http://blog.csdn.net/tiemufeng1122/article/details/6732588 能够实现  点击按钮弹出下载框    的功能,如图: HTML代码: & ...

  8. NPOI导入导出Excel

    .net mvc利用NPOI导入导出excel 注意:如何导出的提交方式ajax导出是失效的! 解决方案是:js处理l两个表单的提交  代码:  第一步. 在页面里面加入2个隐藏的iframe, 如下 ...

  9. C#中用NPOI的excel导出

    //机构表导出 private static List<User2> amininf = new BLL.Bll().GetUser2s(); //定义数据源导出对象 #region 导出 ...

随机推荐

  1. 疑难杂症--已停止运行DBCC造成阻塞

    场景数据库因非法断电导致出现分配页上不一致,运行完DBCC CHECKDB后出现以下错误: 表错误: 表 't_pc_id' (ID 277576027).数据行在索引 'last_login_dat ...

  2. Python 单元测试 增强系统健壮性

    问题背景交代 注意,JulyNovel只爬取免费小说,所有vip章节全部导航至起点网站,遵循robots协议,所有数据仅供学习用途,侵删 通过编写单元测试,提高JulyNovel系统可靠性 首先我们知 ...

  3. C#Zxing.net生成条形码和二维码

    下载Zxing.net官网:https://archive.codeplex.com/?p=zxingnet 或者去VS程序包下载 封装好的代码: using System; using System ...

  4. 转载:各种SQRT大比拼

    很有趣的文章: http://www.codeproject.com/Articles/69941/Best-Square-Root-Method-Algorithm-Function-Precisi

  5. UVA 10881

    题目就不再写了,直接开始 [分析]蚂蚁碰撞掉头,其实不用考虑掉头问题,直接让“掉头”等价于“对穿而过”, 然后调换它们的状态(感觉像是障眼法hhh),只要分清楚“谁是谁”.因为“掉头”,所以蚂蚁 的相 ...

  6. Mac 上安装python3

    1.安装包管理器 去包管理器官网按照提示安装包管理器 Homebrew 2.安装python3 安装完Homebrew ,输入指令安装python3 brew install python3 3.安装 ...

  7. Linux一些常用的基础命令,总结的很好,收藏了

    原文地址:https://www.cnblogs.com/yjd_hycf_space/p/7730690.html

  8. [转] iOS 在UILabel显示不同的字体和颜色

    在项目开发中,我们经常会遇到在这样一种情形:在一个UILabel 使用不同的颜色或不同的字体来体现字符串,在iOS 6 以后我们可以很轻松的实现这一点,官方的API 为我们提供了UILabel类的at ...

  9. 如何高度自定义CollectionView的header和foot

    最近在研究CollectionView,突然发现觉得他的HeaderSection和FootSection也可以高度自定义. 国外有详细的教程:http://www.appcoda.com/ios-c ...

  10. expect分发脚本

    [分发系统]yum -y install expect #!/usr/bin/expect set host "192.168.11.102" " spawn ssh r ...