微软技术追随者,梦想简单清爽平淡的生活
成熟的技术人员,知识架构应该是倒T字形的
博客园
社区
首页
新随笔
联系
管理
订阅
随笔- 97 文章- 2 评论- 89
格式化GridView并导出Excel
1
/**/
///
<summary>
2
///
导出成为Excel
3
///
</summary>
4
///
<param name="exportTargetGridView">
目标GridView
</param>
5
///
<param name="visibleNum">
隐藏的列数
</param>
6
///
<param name="content">
说明内容
</param>
7
public
static
void
ExportExcel(GridView exportTargetGridView,
int
visibleNum,
string
content)
8
{
9
HttpContext.Current.Response.ClearContent();
10
11
HttpContext.Current.Response.Charset
=
"
GB2312
"
;
12
13
HttpContext.Current.Response.ContentEncoding
=
System.Text.Encoding.UTF7;
14
15
HttpContext.Current.Response.AddHeader(
"
content-disposition
"
,
"
attachment; filename=MyExcelFile.xls
"
);
16
17
HttpContext.Current.Response.ContentType
=
"
application/excel
"
;
18
19
StringWriter sw
=
new
StringWriter();
20
21
HtmlTextWriter htw
=
new
HtmlTextWriter(sw);
22
23
for
(
int
i
=
0
; i
<
visibleNum; i
++
)
24
{
25
exportTargetGridView.Columns[exportTargetGridView.Columns.Count
-
(i
+
1
)].Visible
=
false
;
26
}
27
28
exportTargetGridView.RenderControl(htw);
29
30
sw.WriteLine(content
+
exportTargetGridView.Rows.Count.ToString());
31
32
HttpContext.Current.Response.Write(sw.ToString());
33
34
HttpContext.Current.Response.End();
35
}
同时,还要重写
public
override
void
VerifyRenderingInServerForm(Control control)
{
}
如果含有类似于身份证这样的数据,在导出成为Excel后将变成科学计数法的形式显示,所以可以通过以下方式进行转换,该段代码应写在RowDataBound事件中
if
(e.Row.RowType
==
DataControlRowType.DataRow)
{
e.Row.Cells[
4
].Attributes.Add(
"
style
"
,
"
vnd.ms-excel.numberformat:@
"
);
}
KidYang
posted @ 2006-12-31 09:04
KidYang
阅读(423)
评论(4)
编辑
收藏
网摘
发表评论
回复
引用
#1楼
2006-12-31 11:10 |
bing717 [未注册用户]
不错鼓励一下。kid yang
回复
引用
查看
#2楼
2006-12-31 21:17 |
antony.net
不错。这样汇出,在excel里只能有65536条记录。多了就不显示的。
回复
引用
查看
#3楼
[
楼主
]2007-01-01 17:02 |
Kid Yang
多谢@bing717,我会再接再励的。
回复
引用
查看
#4楼
[
楼主
]
2007-01-01 17:03 |
Kid Yang
@antony.net
一般GridView都会分页,所以不会涉及到输入65536那么多
Excel最大的记录数是65536,如果输入的记录超过65536的话,可以分多表输出
新用户注册
刷新评论列表
标题
姓名
主页
Email
(博主才能看到)
验证码
*
看不清,换一张
[
登录
][
注册
]
内容(请不要发表任何与政治相关的内容)
网站首页
新闻频道
社区
小组
博问
网摘
人才
找找看
Remember Me?
登录
使用高级评论
新用户注册
返回页首
恢复上次提交
[使用Ctrl+Enter键可以直接提交]
Google站内搜索
China-pub 计算机图书网上专卖店!6.5万品种 2-8折!
近千种 9-95 新二手计算图书火热销售中!
开发者征途系统新作:《设计模式——基于C#的工程化实现及扩展》
相关文章:
相关链接:
最新IT新闻:
谷歌地图中国版开始显示Panoramio地理标记图片
谷歌李开复:我的传奇人生源于十句箴言
Twitter杀手Pownce被收购 两周内关闭服务
Live Search新增“即时返现”服务
MySpace CEO:明年广告营收仍会增长
公告
2007年起 创建并发展哈尔滨.NET开源团队
<
2006年12月
>
日
一
二
三
四
五
六
26
27
28
29
30
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
1
2
3
4
5
6
与我联系
发短消息
搜索
常用链接
我的随笔
我的空间
我的短信
我的评论
更多链接
我的参与
我的新闻
最新评论
我的标签
留言簿
给我留言
查看留言
我参与的团队
哈尔滨.NET俱乐部(0/162)
开源项目团队(0/461)
.NetFramework3.0 & 3.5(WCF,WPF,WF)团队(0/621)
SOA研究室(0/189)
Silverlight学习与研究(0/317)
Windows Vista开发(0/256)
随笔档案
2008年11月 (2)
2008年10月 (1)
2008年9月 (4)
2008年8月 (5)
2008年7月 (2)
2008年4月 (1)
2008年3月 (7)
2008年1月 (10)
2007年12月 (1)
2007年11月 (8)
2007年10月 (4)
2007年9月 (7)
2007年8月 (16)
2007年7月 (2)
2007年6月 (1)
2007年5月 (2)
2007年4月 (2)
2007年3月 (7)
2007年2月 (4)
2007年1月 (3)
2006年12月 (2)
2006年10月 (1)
2006年9月 (2)
2006年8月 (3)
文章分类
ASP.NET 2.0 应用技术(1)
(rss)
简单生活
(rss)
探索.NET Framework 3.0(1)
(rss)
相册
Ms
最新随笔
1. oracle分布式处理时报“ORA-02041: 客户数据库未开始一个事务处理”解决办法 - z
2. IIS终止VisualStudio调试的解决办法
3. Microsoft Visual Studio 2010 and the .NET Framework 4.0 CTP下载
4. SCOPE_IDENTITY、IDENT_CURRENT 和 @@IDENTITY的区别(比较) - z
5. IIS客户端证书访问配置 - z
6. Detect Client IP in WCF 3.5
7. js文件封装javascript在html中获取url参数
8. C#正则表达式小结 - z
9. windows里非.net服务的删除 - z
10. 微软正式发布SQL Server 2008
11. 编译AjaxControlToolkit错误的解决办法
12. 关于IIS7.0出错的解决方案
13. LiveMesh 微软的云计算
14. TreeView控件在客户端的 全选/全消 脚本实现
15. Linq To Sql 项目从Beta迁移到RTM注意事项
16. 自此KYang独一人
17. 4G相关标准UMB/LTE/WiMAX介绍
18. Architecture of an Autonomous Application 自治应用程序的体系结构 -z
19. 符合web标准插入Flash的方法 - z
20. MAS概念
21. 释德扬,少林大师教你简易健身法
22. 2008.03.13:微软2008新一代企业级应用平台与开发技术发布大会
23. ASP.NET MVC Framework与WCSF中MVP模式之小小比较
24. 中华人民共和国电子签名法
25. 微软举办“十大杰出IT英雄”评选活动 from dudu (ps: 为了园子宣传一下)
26. JavaScript 路径字符串丢失"\" 的解决方法
27. Visual Studio 2005 IDE模板丢失的解决方法
28. Microsoft.NET Framework 全面开源
29. 只让指定的机器连接SQLServer服务器
30. 如何控制触发器递归
积分与排名
积分 - 20923
排名 - 2157
最新评论
1. re: Microsoft Visual Studio 2010 and the .NET Framework 4.0 CTP下载
@ABCDEFGHIJKLMN
兄弟,现在好用了
(KidYang)
2. re: Microsoft Visual Studio 2010 and the .NET Framework 4.0 CTP下载
@ABCDEFGHIJKLMN
上面的地址确实无法访问了,不知道为什么,只开放了几天,我这里也没有下载地址了。 (KidYang)
3. re: Microsoft Visual Studio 2010 and the .NET Framework 4.0 CTP下载
兄弟有没有下载地址啊! 直接的那种!
现在微软网站上找不到这个页面了。
知道地址的话,望兄弟发至我的邮箱! (ABCDEFGHIJKLMN)
4. re: asp.net 定制简单的错误处理页面
@asp初学者
这种情况最好是自定义异常,针对当前模块做异常处理,然后通过将异常信息做为消息,传递给当前页,来显示这些信息。 (KidYang)
5. re: asp.net 定制简单的错误处理页面
lz,你好!如果想将错误显示在本页面上,并且保留用户输入的内容。有没有什么好的方法。 --asp初学者 (asp初学者)
阅读排行榜
1. asp.net 定制简单的错误处理页面(1253)
2. 微软发布简体中文版Visual Studio Team System 2008 测试版 2 Team Suite(980)
3. 4G相关标准UMB/LTE/WiMAX介绍(938)
4. 转 用white-space:nowrap;解决中文标签标签换行问题(907)
5. 保护眼睛的windows窗口颜色(708)
评论排行榜
1. asp.net 定制简单的错误处理页面(7)
2. 含参数数组的存储过程--openxml方式(6)
3. web应用程序模式对话框实现(5)
4. MySpaces性能提高的过程---转(5)
5. Vs 2005 中应用 AjaxPro 2.0(5)