用户名: 密码: 验证码: 注册           网站地图 高级搜索 RSS订阅 收藏本站
山东十七地市站长联盟信息: 济南 青岛 淄博 枣庄 东营 烟台 潍坊 济宁 泰安 威海 日照 莱芜 临沂 德州 聊城 滨州 菏泽      
您的位置:主页>网络编程>.Net编程>

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

[ 来源: | 作者: | 更新日期:2008-6-14 23:56:16 | 评论 0 条 | 我要投稿 ]
利用ASP.NET输出指定内容的WORD、EXCEL、TXT、HTM等类型的文档很容易的。主要分为三步来完成。

一、定义文档类型、字符编码

字串3

Response.Clear();
 Response.Buffer= true; 字串9

 Response.Charset="utf-8";

字串5

 //下面这行很重要, attachment 参数表示作为附件下载,您可以改成 online在线打开 字串2

 //filename=FileFlow.xls 指定输出文件的名称,注意其扩展名和指定文件类型相符,可以为:.doc  .xls  .txt .htm

字串4

 Response.AppendHeader("Content-Disposition","attachment;filename=FileFlow.xls");

字串3

 Response.ContentEncoding=System.Text.Encoding.GetEncoding("utf-8");

字串2

//Response.ContentType指定文件类型 可以为application/ms-excel application/ms-word  application/ms-txt  application/ms-html 或其他浏览器可直接支持文档  字串4

 Response.ContentType = "application/ms-excel";

字串9

 this.EnableViewState = false;

字串5

二、定义一个输入流

字串8

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

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

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

 Response.End(); 字串3

四、 这时如果发生"只能在执行 Render() 的过程中调用 RegisterForEventValidation"的错误提示。

字串5

有两种方法可以解决:
1.修改web.config(不推荐)<pages enableEventValidation ="false" ></pages>
2.直接在导出Execl的页面修改 
字串9

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

字串8


Tags:表格 数据 输出 可以 类型 指定 文件 文档 其他 直接
您的评论
用户名:新注册) 密码: 匿名评论 [所有评论]

·用户发表意见仅代表其个人意见,并且承担一切因发表内容引起的纠纷和责任
·本站管理人员有权在不通知用户的情况下删除不符合规定的评论信息或留做证据
·请客观的评价您所看到的资讯,提倡就事论事,杜绝漫骂和人身攻击等不文明行为