C# 之 下载EXCEL文件,自动用迅雷下载aspx
在浏览器中导出 Excel 得时候,如果浏览器绑定了迅雷,则会下载aspx文件。
解决:下载EXCEL文件,自动用迅雷下载aspx if (Request.QueryString["id"] != null && !string.IsNullOrEmpty(Request.QueryString["id"].ToString()))
{
if (Request.QueryString["oid"] != null && !string.IsNullOrEmpty(Request.QueryString["oid"].ToString()))
{
id = Request.QueryString["id"].ToString();
oid = Request.QueryString["oid"].ToString();
string sqlWhere = string.Format("PProductNumber='{0}' and OrdersNumber='{1}'", id, oid);
List<SonOrders> li= _SonOrdersManager.GetOrdersLists(sqlWhere); if (li.Count > &&li!=null)
{
MemoryStream ms = new MemoryStream();
IWorkbook workbook = new HSSFWorkbook();
ISheet sheet = workbook.CreateSheet();
ICellStyle style1 = workbook.CreateCellStyle();
IFont font = workbook.CreateFont();
font.FontHeightInPoints = ;
style1.SetFont(font);
sheet.DefaultRowHeight = * ; for (int i = ; i < ; i++)
{
if (i == )
sheet.SetColumnWidth(i, * );
else
sheet.SetColumnWidth(i, * );
sheet.SetDefaultColumnStyle(i, style1);
}
IRow row1 = sheet.CreateRow();
ICell cell = row1.CreateCell();
cell.SetCellValue(oid+"_状态详细");
ICellStyle style2 = workbook.CreateCellStyle();
style2.Alignment = HorizontalAlignment.CENTER;
IFont font2 = workbook.CreateFont();
font2.FontHeight = * ;
style2.SetFont(font2);
cell.CellStyle = style2;
sheet.AddMergedRegion(new CellRangeAddress(, , , ));
IRow headerRow = sheet.CreateRow();
headerRow.CreateCell().SetCellValue("产品编号");
headerRow.CreateCell().SetCellValue("下单时间");
headerRow.CreateCell().SetCellValue("原型验收时间");
headerRow.CreateCell().SetCellValue("首件验收时间");
headerRow.CreateCell().SetCellValue("组装验收时间");
headerRow.CreateCell().SetCellValue("厂家出库时间");
headerRow.CreateCell().SetCellValue("现场入库时间");
headerRow.CreateCell().SetCellValue("领用入库时间");
headerRow.CreateCell().SetCellValue("开箱验收时间");
headerRow.CreateCell().SetCellValue("安装完成时间");
headerRow.CreateCell().SetCellValue("安装验收时间"); int j = ;
foreach (SonOrders so in li)
{
IRow dataRow = sheet.CreateRow(j++);
dataRow.CreateCell().SetCellValue(so.SProductNumber);
dataRow.CreateCell().SetCellValue(GetTimeS("下单时间", so.SProductNumber).ToString());
dataRow.CreateCell().SetCellValue(GetTimeS("原型验收时间", so.SProductNumber).ToString());
dataRow.CreateCell().SetCellValue(GetTimeS("首件验收时间", so.SProductNumber).ToString());
dataRow.CreateCell().SetCellValue(GetTimeS("组装验收时间", so.SProductNumber).ToString());
dataRow.CreateCell().SetCellValue(GetTimeS("厂家出库时间", so.SProductNumber).ToString());
dataRow.CreateCell().SetCellValue(GetTimeS("现场入库时间", so.SProductNumber).ToString());
dataRow.CreateCell().SetCellValue(GetTimeS("领用入库时间", so.SProductNumber).ToString());
dataRow.CreateCell().SetCellValue(GetTimeS("开箱验收时间", so.SProductNumber).ToString());
dataRow.CreateCell().SetCellValue(GetTimeS("安装完成时间", so.SProductNumber).ToString());
dataRow.CreateCell().SetCellValue(GetTimeS("安装验收时间", so.SProductNumber).ToString());
}
workbook.Write(ms); ms.Flush();
ms.Position = ; try
{
string[] files = Directory.GetFiles(System.AppDomain.CurrentDomain.BaseDirectory + "excels/");
foreach (string file in files)
{
File.Delete(file);
}
}
catch (Exception exx)
{
Response.Write(exx.Message.ToString());
}
string pname = "状态详细_" + DateTime.Now.ToString("yyyyMMddhhmmss") + ".xls";
NpoiHelper.SaveToFile(ms, System.AppDomain.CurrentDomain.BaseDirectory + "excels/" + pname);
Response.Redirect("~/excels/" + pname, false);
Response.Clear(); // Response.Clear();
// Response.ClearHeaders();
// Response.Buffer = false;
// Response.ContentType = "application/octet-stream";
// if (Request.Browser.Browser == "Firefox")
// System.Web.HttpContext.Current.Response.AppendHeader("Content-Disposition", "attachment;filename=" + oid + "_状态详细.xls");
//else
// System.Web.HttpContext.Current.Response.AppendHeader("Content-Disposition", "attachment;filename=" + HttpUtility.UrlEncode(oid + "_状态详细.xls", System.Text.Encoding.UTF8));
// System.Web.HttpContext.Current.Response.AppendHeader("Content-Length", ms.Length.ToString());
// System.Web.HttpContext.Current.Response.BinaryWrite(ms.GetBuffer());
// System.Web.HttpContext.Current.Response.Flush();
// System.Web.HttpContext.Current.Response.End();
}
}
C# 之 下载EXCEL文件,自动用迅雷下载aspx的更多相关文章
- 自动更新开奖数据的excel文件,供大家下载
自动更新开奖数据的excel文件,供大家下载 2010-03-14 20:22 228492人阅读打印来源:乐彩网 作者:eren 很多人拥有自制excel电子表格,常要更新最基本的开奖信息.如有多期 ...
- 前端调用后端接口下载excel文件的几种方式
今天有一个导出相应数据为excel表的需求.后端的接口返回一个数据流,一开始我用axios(ajax类库)调用接口,返回成功状态200,但是!但是浏览器没有自动下载excel表,当时觉得可能是ajax ...
- 在线读取Mongodb数据库下载EXCEL文件
版本:Mongodb2.4.8 通过页面下载Excel文件 jsp <%@ page language="java" contentType="text/html; ...
- JAVA web端JS下载excel文件
JSP代码如下: JSP端引入jquery.easyui.min.js库: <script type="text/javascript" src="<c:ur ...
- 前端下载excel文件功能的三种方法
1 从后端接收json数据,前端处理生成excel下载 JsonExportExcel的github地址:https://github.com/cuikangjie/JsonExportExcel 这 ...
- jsp下载excel文件
jsp下载excel文件的的实现方法很多,今天也遇到这个问题,乱敲了一阵,终于搞定了,记下来和朋友们分享吧. 假设需要下载excel文件的jsp页面名为:down.jsp 对应的后台action名为: ...
- angularJS通过post方法下载excel文件
最近工作中遇到,要使用angularJS的post方法来下载excel的情况.网上找到一个帖子:http://stackoverflow.com/questions/22447952/angularj ...
- NodeJs实现下载Excel文件
nodejs作为一门新的语言,报表功能也不是十分完善. (1).js-xlsx : 目前 Github 上 star 数量最多的处理 Excel 的库,支持解析多种格式表格XLSX / XLSM / ...
- ASP.NET MVC实现Excel文件的上传下载
在应用系统开发当中,文件的上传和下载是非常普遍的需求.在基于.NET的C/S架构的项目开发当中,有多种方案可以实现文件的上传和下载(httpwebrequest.webclient等),而且多采用异步 ...
随机推荐
- canvas画流程图
用canvas画流程图: 需求:最后一个圆圈无直线 遇到问题:需要画多个圆圈时,画布超出显示屏加滚动条,解决方法是<canvas>外层<div>的width=100%,且ove ...
- ECC加密算法入门介绍 --- 看雪
标 题:ECC加密算法入门介绍 作 者:zmworm 时 间:2003/05/04 08:32pm 链 接:http://bbs.pediy.com ECC加密算法入门介绍 作者 :ZMWorm[C ...
- Light OJ 1011
题意: (好难看) 给你 N 个 男的, 女的, 男的选女票, 题目给出矩阵, Mp[i][j] 表示 第 i 个男的选 第 J 个女的优先值 选了 J 之后的就不能选 J 了: 求所有狗男女的最大优 ...
- Laravel资源理由器跟隐式控制的对比及是怎样的吧?- Route::resource vs Route::controller
stackoverflow找到的问题:http://stackoverflow.com/questions/23505875/laravel-routeresource-vs-routecontrol ...
- 远程连接阿里云的mysql数据库
第一步 由于mysql版本问题 先尝试打开 sudo vim /etc/mysql/my.cnf 如空,再尝试打开 sudo vim /etc/mysql/mysql.conf.d/mysqld.cn ...
- Python-mysql 权限 pymysql 注入共计
1.mysql用户管理 *** 数据安全非常重要 不可能随便分配root账户 应该按照不同开发岗位分配不同的账户和权限 mysql中 将于用户相关的数据放在mysql库 user - > db ...
- linux进程内存布局
一个程序本质上都是由 BSS 段.data段.text段三个组成的.这样的概念在当前的计算机程序设计中是很重要的一个基本概念,而且在嵌入式系统的设计中也非常重要,牵涉到嵌入式系统运行时的内存大小分 ...
- hive学习03-求一年中的最大温度
知识点: substr.concat函数的使用: row_number() over(distribute by year sort by temp desc) #按照年分组,按照tmp去排序 需 ...
- C#遍历指定文件夹中的所有文件(转)
C#遍历指定文件夹中的所有文件 DirectoryInfo TheFolder=new DirectoryInfo(folderFullName);//遍历文件夹foreach(DirectoryIn ...
- iOS 高德地图轨迹回放的 思路, 及方法
// 开始,公司要求制作一段跑步轨迹 在地图上的 动画回放, 传入一段经纬度, 开始一想,这不是很简单吗, 高德地图有可以把经纬度转换成坐标点的方法 /** * @brief 将经纬度转换为指定vie ...