string sql = "select * from WJ_ProjectManager where" + WhereString ;
DataTable dt = SqlHelper.ExecuteDataTable(sql);
Aspose.Cells.Workbook wk = new Aspose.Cells.Workbook();
string excelFile = string.Empty;
excelFile = "项目管理导出模板.xlsx";
wk.Open(System.Web.HttpContext.Current.Server.MapPath("/View/ProjectManager/" + excelFile));
if (dt.Rows.Count > 0) {
for (int i = 0; i < dt.Rows.Count; i++)
{
wk.Worksheets[0].Cells[i + 2, 0].PutValue(i+1); //项目名称
wk.Worksheets[0].Cells[i + 2, 1].PutValue(dt.Rows[i]["P_Name"]); //项目名称

wk.Worksheets[0].Cells[i + 2, 2].PutValue(dt.Rows[i]["P_Customer"].ToString().Split(',')[1]); //关联客户
wk.Worksheets[0].Cells[i + 2, 3].PutValue(dt.Rows[i]["P_Price"]); //项目价格
wk.Worksheets[0].Cells[i + 2, 4].PutValue(dt.Rows[i]["P_StartDay"].ToString().Substring(0,10)); //预计实施时间
wk.Worksheets[0].Cells[i + 2, 5].PutValue(dt.Rows[i]["P_AddDay"].ToString().Substring(0,10));//项目新增时间
wk.Worksheets[0].Cells[i + 2, 6].PutValue(dt.Rows[i]["P_Status"]);//项目状态
wk.Worksheets[0].Cells[i + 2, 7].PutValue(dt.Rows[i]["P_Relation"]);//联系人
wk.Worksheets[0].Cells[i + 2, 8].PutValue(dt.Rows[i]["P_Solder"]);//销售人员

}

string yxdatet = DateTime.Now.Year + "" + DateTime.Now.Month + "" + DateTime.Now.Day + "" + DateTime.Now.Millisecond;

string filename = yxdatet + "项目管理.xls";
string serverPath = System.Web.HttpContext.Current.Server.MapPath("/import/" + filename);
wk.Save(serverPath);

FileInfo fileInfo = new FileInfo(serverPath);
context.Response.Clear();
context.Response.ClearContent();
context.Response.ClearHeaders();
System.Web.HttpContext.Current.Response.Charset = "GB2312";
context.Response.AddHeader("Content-Disposition", "attachment;filename=" + context.Server.UrlEncode(yxdatet + "项目管理.xls"));

context.Response.AddHeader("Content-Length", fileInfo.Length.ToString());
context.Response.AddHeader("Content-Transfer-Encoding", "binary");
context.Response.ContentType = "application/octet-stream";
context.Response.ContentEncoding = System.Text.Encoding.GetEncoding("gb2312");
context.Response.WriteFile(fileInfo.FullName);
context.Response.Flush();
context.Response.End();

使用插件实现一般处理程序导出excel的更多相关文章

  1. php不使用插件导出excel

    php不使用插件导出excel的简单方法,首先获取需要导出的数据的数组,数组的格式在下面. 之后就是定义文件名称和需要导出的excel的样式,最后就是循环数组,输出数据了 代码: $filename= ...

  2. 导出Excel插件——Export-CSV ---20150610

    出处:http://bbs.hcharts.cn/thread-99-1-1.html   导出Excel插件——Export-CSV 一.插件信息 插件名:Export-CSV(导出Execl文件) ...

  3. 导出Excel/Pdf/txt/json/XML/PNG/CSV/SQL/MS-Word/ Ms-Powerpoint/等通过tableExport.js插件来实现

    首先去我的云盘下载需要的js: 链接:https://pan.baidu.com/s/13vC-u92ulpx3RbljsuadWw 提取码:mo8m 页面代码: <!DOCTYPE html& ...

  4. 插件 ExcelWrite 导出Excel格式数据/获取图层

    使用ExcelWrite 插件可以导出Excel格式的数据: ExcelFile端口接 文件数据路径 最后面的是文件名,不用写格式 如果存储树形数据,需要 勾选 List To Row 选项: 附: ...

  5. 使用POI插件,提取导出excel的工具类

    在网站的不同的模块都需要使用到导入导出excel的功能,我们就需要写一个通用的工具类ExcelUtil. 我的思路:首先,导入和导出的Excel的文件格式固定:主标题,二级标题,数据行(姑且就这么叫) ...

  6. Java无模板导出Excel,Apache-POI插件实现

    开发环境 jdk 1.8 Maven 3.6 Tomcat 8.5 SpringBoot 2.1.4.RELEASE Apache-POI 3.6 Idea 注意: 我是在现有的基于SpringBoo ...

  7. php 导出Excel 不用安装插件、开启配置

    function export_csv($filename, $data) { header("Content-type:text/csv"); header("Cont ...

  8. 个人推荐的两款vue导出EXCEL插件

    个人认为前端VUE项目中导出EXCEL比较好的两种方法,均不是我个人原创,我只是收录简单说明,原创地址在下面. 下面推荐两种方法,个人推荐第一种,第二种不做详细讲解,因为作者已经写过博客了,你们可以点 ...

  9. Java导出excel

    一.介绍 常常有客户这样子要求:你要把我们的报表直接用Excel打开(电信系统.银行系统).或者是:我们已经习惯用Excel打印.这样在我们实际的开发中,很多时候需要实现导入.导出Excel的应用. ...

随机推荐

  1. jws.mono脚本安装详解

    就在最近两天,最新版本的jws.mono上线了,这个版本除了提供与之前版本拥有的功能外,还额外提供了一个“自动化”的安装脚本,通过执行该脚本,jws.mono将自动快速的安装到指定的目录,同时,通过改 ...

  2. [Unity3D]自己动手重制坦克舰队ArmadaTank(2)从碰撞说起

    [Unity3D]自己动手重制坦克舰队ArmadaTank(2)从碰撞说起 在上一篇里我给出了重制的坦克舰队效果图和试玩程序.本篇介绍一下玩家坦克和敌方坦克碰撞问题. +BIT祝威+悄悄在此留下版了个 ...

  3. Python模拟HttpRequest的方法总结

    Python可以说是爬网的利器,本文主要介绍了一些python来模拟http请求的一些方法和技巧. Python处理请求的类库有两个,urllib,urllib2. 这两个类库并不是一个类库的两个不同 ...

  4. python数据类型详解

    目录1.字符串2.布尔类型3.整数4.浮点数5.数字6.列表7.元组8.字典9.日期 1.字符串1.1.如何在Python中使用字符串a.使用单引号(')用单引号括起来表示字符串,例如:str='th ...

  5. CefSharp初识--把网页移到桌面

    在开发中我们可曾有过这样的需求,将某个网页嵌入到.Net应用中来,但Winform自带的web browser不怎么理想.CefSharp可以让我们在.Net应用中嵌入一个Chromium.它提供了W ...

  6. KnockoutJS 3.X API 第七章 其他技术(6) 使用“fn”添加自定义函数

    有时,您可能会通过向Knockout的核心值类型添加新功能来寻找机会来简化您的代码. 您可以在以下任何类型中定义自定义函数: 因为继承,如果你附加一个函数到ko.subscribable,它将可用于所 ...

  7. java笔试题

    下面有关JVM内存,说法错误的是? A.程序计数器是一个比较小的内存区域,用于指示当前线程所执行的字节码执行到了第几行,是线程隔离的 B.Java方法执行内存模型,用于存储局部变量,操作数栈,动态链接 ...

  8. 引用类型-RegExp类型

    JavaScript高级程序设计(第三版)笔记-第五章-RegExp类型 定义正则表达式有两种方式 1.用字面量形式定义正则表达式: ver expression = /patterns/flags; ...

  9. 利用Shell脚本将MySQL表中的数据转化为json格式

    脚本如下: #!/bin/bash mysql -s -phello test >.log <<EOF desc t1; EOF lines="concat_ws(',', ...

  10. C# 打印PDF文件之使用不同打印机打印所有页面或部分页面

    C# 打印PDF文件之使用不同打印机打印所有页面或部分页面 最近在逛国外各大编程社区论坛的时候,发现很多人都在问一个关于PDF文件打印的问题:打印时如何选择非默认打印机并设置打印页面的范围.而一般情况 ...