三步将Asp.Net页面输出到EXCEL里

其实,利用ASP.NET输出指定内容的WORD、EXCEL、TXT、HTM等类型的文档很容易的。主要分为三步来完成。
一、定义文档类型、字符编码  


代码如下:

Response.Clear();
   Response.Buffer= true;
   Response.Charset="utf-8";  
   //下面这行很重要, attachment 参数表示作为附件下载,您可以改成 online在线打开
   //filename=FileFlow.xls 指定输出文件的名称,注意其扩展名和指定文件类型相符,可以为:.doc    .xls    .txt   .htm  
   Response.AppendHeader("Content-Disposition","attachment;filename=FileFlow.xls");
   Response.ContentEncoding=System.Text.Encoding.GetEncoding("utf-8");  
   //Response.ContentType指定文件类型 可以为application/ms-excel    application/ms-word    application/ms-txt    application/ms-html    或其他浏览器可直接支持文档 
   Response.ContentType = "application/ms-excel";
   this.EnableViewState = false;  

二、定义一个输入流  


代码如下:

   System.IO.StringWriter oStringWriter = new System.IO.StringWriter();
   System.Web.UI.HtmlTextWriter oHtmlTextWriter = new System.Web.UI.HtmlTextWriter(oStringWriter);

三、将目标数据绑定到输入流输出  


代码如下:

this.RenderControl(oHtmlTextWriter);   
   //this 表示输出本页,你也可以绑定datagrid,或其他支持obj.RenderControl()属性的控件  
   Response.Write(oStringWriter.ToString());
   Response.End();  

总结:本例程在Microsoft Visual Studio .NET 2003平台下测试通过,适用于C#和VB,当采用VB的时候将 this 关键字改成 me 。

(0)

相关推荐

  • asp.net计算每个页面执行时间的方法

    本文实例讲述了asp.net计算每个页面执行时间的方法.分享给大家供大家参考.具体分析如下: 这里的asp.net代码可实现计算每个页面的执行时间,无需要修改页面的相关代码,这段代码会给所有的页面统一加上执行时间显示 public class PerformanceMonitorModule : IHttpModule { public void Init(HttpApplication context) { context.PreRequestHandlerExecute += delegat

  • ASP.net实现页面跳转的方法

    主要是使用response的属性,代码如下: 复制代码 代码如下: protected void LinkButton1_Click(object sender, EventArgs e)         {             string url = "InfoShow.aspx";             Response.Redirect(url);         } protected void LinkButton1_Click(object sender, Even

  • ASP.Net页面生成饼图实例

    本文实例讲述了ASP.Net页面生成饼图的方法.分享给大家供大家参考.具体实现方法如下: 1.生成普通饼图: 复制代码 代码如下: using System; using System.Collections.Generic; using System.Drawing; using System.Drawing.Imaging; using System.Linq; using System.Web; using System.Web.UI; using System.Web.UI.WebCon

  • 设置ASP.NET页面的运行超时时间详细到单个页面及站点

    全局超时时间 服务器上如果有多个网站,希望统一设置一下超时时间,则需要设置 Machine.config 文件中的 ExecutionTimeout 属性值. Machine.config 文件位于 %SystemRoot%\Microsoft.NET\Framework\%VersionNumber%\CONFIG\ 目录中. 例如: 复制代码 代码如下: <httpRuntime executionTimeout="90" maxRequestLength="409

  • ASP.NET笔记之页面跳转、调试、form表单、viewstate、cookie的使用说明

    1.页面跳转: (1 服务器传输 server.Transer(http://www.jb51.net);在定向到新页面后,还是会显示原来的URL,浏览器返回不会退回到原页面,历史记录也不会记录. 应用于完整的控制传输,例如安装向导. (2 超链接 (3 浏览器重定向 Redirect ,速度快,没有发送到服务器 (4 跨页发送 PostBackUrl="http://www.jb51.net" /> IsCrossPagePostBack用来判断是否为跨页提交 IsPostBa

  • ASP.NET 页面中加添加用户控件的写法

    一:在页面前台中添加注册控件 复制代码 代码如下: <%@ Register Src="~/Controls/IndexTop.ascx" TagName="IndexTop" TagPrefix="uc_top" %> 二:在页面需要添加控件的地方添加控件内容 复制代码 代码如下: <uc_top:IndexTop ID="IndexTop1" runat="server" />

  • asp.net截屏功能实现截取web页面

    本文实例展示了asp.net截屏功能实现截取web页面的方法,代码简洁易懂,分享给大家供大家参考. 具体实现代码如下: using System.Drawing; //打开该页面 System.Diagnostics.Process.Start("IEXPLORE.EXE", "http://localhost:56/Spacxxe.html"); System.Threading.Thread.Sleep(3000); //截屏 //创建并设置画布大小 Syste

  • 三种asp.net页面跳转的方法

    第一种方法:response.redirect 这个跳转页面的方法跳转的速度不快,因为它要走2个来回(2次postback),但它可以跳转到任何页面,没有站点页面限制(即可以由雅虎跳到新浪),同时不能跳过登录保护.但速度慢是其最大缺陷!redirect跳转机制:首先是发送一个http请求到客户端,通知需要跳转到新页面,然后客户端在发送跳转请求到服务器端.需要注意的是跳转后内部空间保存的所有数据信息将会丢失,所以需要用到session. 代码如下  using System; using Syst

  • 三步将Asp.Net页面输出到EXCEL里

    其实,利用ASP.NET输出指定内容的WORD.EXCEL.TXT.HTM等类型的文档很容易的.主要分为三步来完成. 一.定义文档类型.字符编码 复制代码 代码如下: Response.Clear(); Response.Buffer= true; Response.Charset="utf-8"; //下面这行很重要, attachment 参数表示作为附件下载,您可以改成 online在线打开 //filename=FileFlow.xls 指定输出文件的名称,注意其扩展名和指定文

  • asp.net 页面输出缓存

    主要用于不经常更新和修改,而在第一次编译是时要经过大量处理的数据.页面输出缓存是缓存的整个页面 使用很简单<%@ OutPutCache Duration="60" VaryByParam="none"%> Duration:缓存时间 VaryByParam:通过参数来更新缓存的内容 还有其他的一些属性 CacheProfile:调用WebConfig中的缓存时间 例如:WebCofig中 复制代码 代码如下: <system.web> &l

  • Asp.Net数据输出到EXCEL表格中

    一.定义文档类型.字符编码 Response.Clear(); Response.Buffer= true; Response.Charset="utf-8"; //下面这行很重要, attachment 参数表示作为附件下载,您可以改成 online在线打开 //filename=FileFlow.xls 指定输出文件的名称,注意其扩展名和指定文件类型相符,可以为:.doc .xls .txt .htm Response.AppendHeader("Content-Disp

  • ASP.NET 2.0中的页面输出缓存

    静态页面全部内容保存在服务器内存中.当再有请求时,系统将缓存中的相关数据直接输出,直到缓存数据过期.这个过程中,缓存不需要再次经过页面处理生命周期.这样可以缩短请求响应时间,提高应用程序性能.很显然,页面输出缓存适用于不需要频繁更新数据,而占用大量时间和资源才能编译生成的页面.对于那些数据经常更新的页面,则不适用.默认情况下,ASP.NET 2.0启用了页面输出缓存功能,但并不缓存任何响应的输出.开发人员必须通过设置,使得某些页面的响应成为缓存的一部分. 设置页面输出缓存可以使用以下两种方式:一

  • 简单三步实现报表页面集成天气

    条条框框的报表页面枯燥乏味?不妨给页面加点"新意"! 前阵子,在看天气预报的时候,发现免费天气预报的调用代码,瞬间想到可以给我开发的报表"润润色". 一共三个步骤,教你手到擒来 第一步 先去天气资源提供者(自行百度)挑选适合自己页面的预报 第二步 copy框中iframe标签. JS代码: document.writeln("<iframe name=\"weather_inc\" src=\"http:\/\/i.ti

  • asp.net页面生命周期详解

    Asp.net是微软.Net战略的一个组成部分.它相对以前的Asp有了很大的发展,引入了许多的新机制.本文就Asp.net页面的生命周期向大家做一个初步的介绍,以期能起到指导大家更好.更灵活地操纵Asp.net的作用.当一个获取网页的请求(可能是通过用户提交完成的,也可能是通过超链接完成的)被发送到Web服务器后,这个页面就会接着运行从创建到处理完成的一系列事件.在我们试图建立Asp.net页面的时候,这个执行周期是不必去考虑的,那样只会自讨苦吃.然而,如果被正确的操纵,一个页面的执行周期将是一

  • ASP显示页面执行时间的方法

    在 ASP 程序中,要想计算一个页面从执行开始到执行结束需要花费多少时间是非常简单的!我们知道,ASP 是解释型语言,也就是说它的执行过程是从页面的开端到页面的尾端,我们只需要计算一个时间差就可以得到页面执行的时间了. 下面看看是怎么实现的,分为三步! 第一步:在页面的头部定义一个开始时间的变量,并且获取当前时间 <% Dim StarTime StarTime = Timer() %> 第二步:在页面的尾部定义一个结束时间的变量,并且获取当前时间 <% Dim EndTime EndT

  • Asp.net 页面导航的几种方法与比较 分享

    一.超级链接 从一个表单进入另一个表单最简单的方式是使用HTML超级链接控件.在Web表单中,使用超级链接的HTML代码类如: 复制代码 代码如下: <a href="WebForm2.aspx">进入表单2</a> 当用户点击该超级链接,WebForm2.aspx执行并将结果发送到浏览器.超级链接导航方式几乎可用于任何地方,包括HTML页面和普通的ASP页面.ASP.NET还提供了另一种可替换使用的方法,即HyperLink服务器控件: 复制代码 代码如下:

  • 详解ASP.NET 页面之间传值的几种方式

    开篇概述 对于任何一个初学者来说,页面之间传值可谓是必经之路,却又是他们的难点.其实,对大部分高手来说,未必不是难点. 回想2016年面试的将近300人中,有实习生,有应届毕业生,有1-3年经验的,有3-5年经验的,有5-10年经验的,对于所有的面试者,我几乎问了同一道题:"请说说你所知道的页面之间传值的几种形式和方法,并阐述他们的原理和过程",关于这道题,从大家的回答来看,结果并不是很理想,从种类上来说,大部分人回答5种左右,极少部分能回答8种,没有超过8种的,但从深度上来说,很少有

随机推荐