ASP.NET中GridView数据导出EXCEL小结
2010-12-11 15:36
686 查看
本周按业务部门的要求,做一个客户拜访登记管理的小程序(B/S模式),在这里面用到了GridView来显示根据条件查询到的数据,但业务部门同时要求数据要导出为EXCEL方面使用,在网上查找了很多资料,汇总并根据自己的实际情况编写使用,效果不错,现记下以备忘并与大家分享。(开发环境:Windows 2003/VS 2005/SQL SERVER 2005)
导出为EXCEL的代码网上有很多,分析后选择了最简单的直接用流方法导出,文件类型为XLS文件,但实际上是一个文本文件(HTML格式),这样的优点是1、服务器本身不需要安装OFFICE组件,有很好的通用性;2、导出文件为直接生成直接下载,不需要预先保存在服务器上,对空间大小没有需求;3、控制简单,代码容易理解。缺点是有一些EXCEL特有的功能可能无法实现吧。
先将代码贴出,再一步步的讲一下当时遇到的问题和处理方法吧:
style方式
边学边做,花了半天的时间,将整个GridView导出数据到EXCEL的功能了解了一个大概,现汇总一下和大家一起分享,因为这次的数据基本可以肯定没有超过六万条的可能,就没有考虑OFFICE2003无法打开的情况,而且如果数据超过了最大允许条数,因为生成并下载的实际上文本格式,也可以直接使用OFFICE2007来打开操作,关于多个工作表导出及导出为“真正”的EXCEL文件的,下一步慢慢来处理吧,呵呵。
导出为EXCEL的代码网上有很多,分析后选择了最简单的直接用流方法导出,文件类型为XLS文件,但实际上是一个文本文件(HTML格式),这样的优点是1、服务器本身不需要安装OFFICE组件,有很好的通用性;2、导出文件为直接生成直接下载,不需要预先保存在服务器上,对空间大小没有需求;3、控制简单,代码容易理解。缺点是有一些EXCEL特有的功能可能无法实现吧。
先将代码贴出,再一步步的讲一下当时遇到的问题和处理方法吧:
style方式
'下面的代码是在导出事件中的 GV_list.RenderControl(htw) '将css代码加在此处 response.Write("<style> .text { vnd.ms-excel.numberformat:@; } .cndate {vnd.ms-excel.numberformat:yyyy年m月d日} </style>") Response.Write(strWriter.ToString) '下面是一个单独的过程 Protected Sub GV_list_RowDataBound(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.GridViewRowEventArgs) Handles GV_list.RowDataBound If e.Row.RowType = DataControlRowType.DataRow Then e.Row.Cells(0).Attributes.Add("class", "text") e.Row.Cells(4).Attributes.Add("class", "text") e.Row.Cells(5).Attributes.Add("class", "text") e.Row.Cells(6).Attributes.Add("class", "cndate") End If End Sub
边学边做,花了半天的时间,将整个GridView导出数据到EXCEL的功能了解了一个大概,现汇总一下和大家一起分享,因为这次的数据基本可以肯定没有超过六万条的可能,就没有考虑OFFICE2003无法打开的情况,而且如果数据超过了最大允许条数,因为生成并下载的实际上文本格式,也可以直接使用OFFICE2007来打开操作,关于多个工作表导出及导出为“真正”的EXCEL文件的,下一步慢慢来处理吧,呵呵。
相关文章推荐
- asp.net中gridview数据导出到excel
- 在ASP.NET中将GridView数据导出到Word、Excel
- Asp.net 2.0 GridView数据导出Excel文件(示例代码下载)
- asp.net中将gridview数据导出成Excel问题解决
- asp.net导出GridView数据到Excel
- Asp.net 2.0 GridView数据导出Excel文件(示例代码下载)
- asp.net 2.0 GridView导出数据到Excel
- ASP.NET GridView导出数据到Excel
- Asp.net 2.0 GridView数据导出Excel文件
- ASP.NET GridView导出数据到Excel
- Datatable或Gridview中的数据导出为excel表格数据(Asp.net C#)
- Asp.net GridView数据导出到Excel,Word
- Asp.net 2.0 GridView数据导出Excel文件(示例代码下载)
- Asp.net 2.0 GridView数据导出Excel文件(示例代码下载)
- asp.net导出GridView数据到Excel
- Asp.Net导出GridView数据到Excel
- Asp.net 2.0 GridView数据导出Excel文件(示例代码下载)
- 分享:Asp.net 中GridView 怎样将数据导出到Excel中
- asp.net_GridView导出数据到Excel/Word
- C# asp.net 把GridView数据 导出到 Excel