博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
asp.net将控件或页面数据导出到Excel
阅读量:4950 次
发布时间:2019-06-11

本文共 1901 字,大约阅读时间需要 6 分钟。

利用Response.ContentType 属性,设置为application/vnd.ms-excel,将文本数据以microsoft excel的格式输出(Response)到客户端。

如,导出DataGrid:

1 //要导出的DataGrid控件   2  3 protected void Button2_Click(object sender, EventArgs e)   4  5     {   6  7         //要导出的控件   8  9         System.Web.UI.Control ctl = this.Label1;  10 11    12 13         //输出属性  14 15         HttpContext.Current.Response.AppendHeader("Content-Disposition", "attachment;filename=Excel.xls");  16 17         HttpContext.Current.Response.Charset = "UTF-8";  18 19         HttpContext.Current.Response.ContentEncoding = System.Text.Encoding.Default;  20 21         HttpContext.Current.Response.ContentType = "application/ms-excel";  22 23    24 25         //输出空间内容到HtmlTextWriter  26 27         ctl.Page.EnableViewState = false;  28 29         System.IO.StringWriter tw = new System.IO.StringWriter();  30 31         System.Web.UI.HtmlTextWriter hw = new System.Web.UI.HtmlTextWriter(tw);  32 33         ctl.RenderControl(hw);  34 35    36 37         //输出HtmlTextWriter  38 39         HttpContext.Current.Response.Write(tw.ToString());  40 41         HttpContext.Current.Response.End();  42 43     }

 

使用这种方法,可以将大部分控件的数据都导入到Excel文件中。如Literal、GridView、Repeater、Label,只要这些控件中的数据是格式良好的表格,导出的Excel格式也是以表格数据形式展现。

将上边的代码直接写入到Page_Load中,可以将整个页面下载为Excel文件.

1 protected void Page_Load(object sender, EventArgs e)   2  3     {   4  5         if (!IsPostBack)   6  7         {   8  9             Response.Clear();  10 11             Response.Buffer = true;  12 13             Response.AppendHeader("Content-Disposition", "attachment;filename=" + DateTime.Now.ToString("yyyyMMdd") + ".xls");  14 15             Response.ContentEncoding = System.Text.Encoding.UTF8;  16 17             Response.ContentType = "application/vnd.ms-excel";  18 19             this.EnableViewState = false;  20 21         }  22 23     }

 

 

转载于:https://www.cnblogs.com/gates/archive/2013/06/07/3124318.html

你可能感兴趣的文章
BCG与阿里研究院等联合揭秘中国互联网经济:成功的关键是什么?
查看>>
发力IoT领域 Marvell注重生态系统发展
查看>>
数据中心网络布线工程必备七大件
查看>>
20个问题揭穿冒牌数据科学家
查看>>
你应该知道的 RPC 原理
查看>>
Ubuntu安装词典
查看>>
KVM虚拟机在线添加网卡
查看>>
Spring解析
查看>>
支付宝签约教程及注意事项
查看>>
Linux Glibc溢出漏洞凶猛来袭 可让***者获取操作系统的控制权限
查看>>
设计模式之原则
查看>>
Maven修改全局和局部JDK版本
查看>>
设计模式——组合模式(Composite Pattern)
查看>>
java设计模式之——代理模式
查看>>
php页面防止重复提交
查看>>
Perl DBI模块的例子
查看>>
python中str和repr区别
查看>>
升级win10后无法使用桥接网络解决方法
查看>>
如何进行跨网段的远程唤醒
查看>>
数据挖掘-同比与环比
查看>>