//对已有方法进行重写

public override void VerifyRenderingInServerForm(Control control)
{ }

//设置文件名
string fileName = DateTime.Now.ToString("yyyyMMddHHmmss");

//HTTP请求内容
System.Web.HttpContext curContext = System.Web.HttpContext.Current;

// 输出文件流
System.IO.StringWriter strWriter = null;

//服务端控件输出流
System.Web.UI.HtmlTextWriter htmlWriter = null;

// 清空当前 Response
HttpContext.Current.Response.Clear();

//设置缓冲方式输出
HttpContext.Current.Response.Buffer = true;

//添加HTTP标头到输出流
HttpContext.Current.Response.AddHeader("content-disposition", string.Format("attachment; filename={0}.xls", fileName));
curContext.Response.ContentType = "application/vnd.ms-excel"; //设置输出文件类型为xls文件

/**如果要输出doc文件,请用下面这段代码**/
//HttpContext.Current.Response.AddHeader("content-disposition", string.Format("attachment; filename={0}.doc", fileName));
//curContext.Response.ContentType = "application/ms-word"; //设置输出文件类型为word文件

//设置编码方式
curContext.Response.ContentEncoding = System.Text.Encoding.GetEncoding("GB2312");
curContext.Response.Charset = "";

// 导出文件
strWriter = new System.IO.StringWriter();
htmlWriter = new System.Web.UI.HtmlTextWriter(strWriter);

htmlWriter.Write("测试标题1");
//for (int i = 0; i < ds.Columns.Count; i++)
//{
// htmlWriter.Write(ds.Columns[i].Caption.ToString());
//}
//
// 返回客户端
// DataList1.RenderControl
GridView1.RenderControl(htmlWriter);
curContext.Response.Write(strWriter.ToString().Replace("<br/>", "<br style='mso-data-placement:same-cell;'/> "));

curContext.Response.End();

//设置文件名
string fileName = DateTime.Now.ToString("yyyyMMddHHmmss");

//HTTP请求内容
System.Web.HttpContext curContext = System.Web.HttpContext.Current;

// 输出文件流
System.IO.StringWriter strWriter = null;

//服务端控件输出流
System.Web.UI.HtmlTextWriter htmlWriter = null;

// 清空当前 Response
HttpContext.Current.Response.Clear();

//设置缓冲方式输出
HttpContext.Current.Response.Buffer = true;

//添加HTTP标头到输出流
HttpContext.Current.Response.AddHeader("content-disposition", string.Format("attachment; filename={0}.xls", fileName));
curContext.Response.ContentType = "application/vnd.ms-excel"; //设置输出文件类型为xls文件

/**如果要输出doc文件,请用下面这段代码**/
//HttpContext.Current.Response.AddHeader("content-disposition", string.Format("attachment; filename={0}.doc", fileName));
//curContext.Response.ContentType = "application/ms-word"; //设置输出文件类型为word文件

//设置编码方式
curContext.Response.ContentEncoding = System.Text.Encoding.GetEncoding("GB2312");
curContext.Response.Charset = "";

// 导出文件
strWriter = new System.IO.StringWriter();
htmlWriter = new System.Web.UI.HtmlTextWriter(strWriter);

htmlWriter.Write("测试标题1");
//for (int i = 0; i < ds.Columns.Count; i++)
//{
// htmlWriter.Write(ds.Columns[i].Caption.ToString());
//}
//
// 返回客户端

GridView1.RenderControl(htmlWriter);
curContext.Response.Write(strWriter.ToString().Replace("<br/>", "<br style='mso-data-placement:same-cell;'/> "));

curContext.Response.End();

.net web端导出Excel个人的看法的更多相关文章

  1. fastadmin 随笔 刷新表格数据 获取当前登录人信息 服务端导出Excel

    table.bootstrapTable('refresh',{url:'你的url'}); 获取当前登录人信息 $this->auth就能获取当前用户信息,比如$this->auth-& ...

  2. JDE报表开发笔记(Client端导出Excel乱码)

    之前导出Excel时没发生任何问题, Client端PL/SQL字符集为UTF-8 Oracle JDE E910字符集为UTF-8 解决方式:添加指定用户的字符集(上图即为修改后的用户字符集) 角色 ...

  3. 64位系统web项目导出excel问题分析及解决方法汇总

    最近在web项目中做了一个导出Excel功能.在导出的时候报错:检索 COM 类工厂中 CLSID 为 {00024500-0000-0000-C000-000000000046} 的组件时失败. 一 ...

  4. Web C# 导出Excel 方法总结

    方法1:微软推荐服务器需安装Excel型 依赖: 软件:Office Excel 2007-2013 引用:Microsoft Office 14.0 Object Library 1.1 数据准备 ...

  5. Web端导出CSV

    前端导出文件大部分还是通过服务器端的方式生成文件,然后传递到客户端.但很多情况下当我们导出CSV时并不需要后端参与,甚至没有后端. 做过WebGIS的同学经常会碰到这种场景,用户的兴趣点数据以csv文 ...

  6. 前端导出Excel兼容写法

    今天整理出在Web前端导出Excel的写法,写了一个工具类,对各个浏览器进行了兼容. 首先,导出的数据来源可能有两种: 1. 页面的HTML内容(一般是table) 2. 纯数据 PS:不同的数据源, ...

  7. uniapp导入导出Excel

    众所周知,uniapp作为跨端利器,有诸多限制,其中之一便是vue页面不支持传统网页的dom.bom.blob等对象. 所以,百度上那些所谓的导入导出excel的方法,大部分都用不了,比如xlsx那个 ...

  8. (ssh整合web导出excel)在ssh框架中使用poi正确导出具有比较高级固定格式的excel 整体过程,查询导出前后台下载

    (一) 接需求  :   需求相关   (贴图 ) 生成三核对文件 1.新增三核对菜单页面中,增加生成三核对文件功能按钮,弹窗可根据变电站.电压等级查询定值单. 2.定值单信息以表格形式展示,根据选择 ...

  9. 浏览器端JS导出EXCEL

    浏览器端JS导出EXCEL FileSaver.js 实现了在本身不支持 HTML5 W3C saveAs() FileSaver 接口的浏览器支持文件保存.FileSaver.js 在客户端保存文件 ...

随机推荐

  1. cron表达式使用详解

    Cron表达式是一个字符串,字符串以5或6个空格隔开,分为6或7个域,每一个域代表一个含义,Cron有如下两种语法格式: Seconds Minutes Hours DayofMonth Month ...

  2. JavaEE SpringMVC 基础概念(如需详细资料请留言)

    SpringMVC Web开发核心思想: 模型与视图相分离: 控制逻辑与业务逻辑相分离: 视图选择与具体视图技术相分离: 非侵入式开发(尽量少使用框架特定API),易于测试. SpringMVC是什么 ...

  3. Ubuntu下Nutch1.2的使用

    aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAAeMAAABpCAIAAACGSdxlAAAAA3NCSVQICAjb4U/gAAAgAElEQVR4Xu ...

  4. 关于Gridview的列名问题

    Gridview的的数据绑定方法有两种: 一种就是datasourceid的绑定在绑定过程当中也可以通过select来选择性的绑定. 二种就是databind(): SqlDataAdapter da ...

  5. 【JavaScript】固定布局轮播图特效

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  6. php 常用数组操作

    php常用的数组操作函数,包括数组的赋值.拆分.合并.计算.添加.删除.查询.判断.排序等 array_combine 功能:用一个数组的值作为新数组的键名,另一个数组的值作为新数组的值 <?p ...

  7. ShellShock 攻击实验

    一. 实验描述 2014年9月24日,Bash中发现了一个严重漏洞shellshock,该漏洞可用于许多系统,并且既可以远程也可以在本地触发.在本实验中,学生需要亲手重现攻击来理解该漏洞,并回答一些问 ...

  8. c语言实现牛顿迭代法

    #include<stdio.h> #include<stdlib.h> #include<math.h> #include<float.h> #inc ...

  9. HDOJ 题目2474 String painter(区间DP)

    String painter Time Limit: 5000/2000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)To ...

  10. The Nine Indispensable Rules for HW/SW Debugging 软硬件调试之9条军规

    I read this book in the weekend, and decided to put the book on my nightstand. It's a short and funn ...