解决方法
基本上,您只需要遍历DataTable的列和行,以便将它们输出到响应中.
This link告诉你如何.
在C#中:
DataTable dt = GetData(); string attachment = "attachment; filename=Employee.xls"; Response.ClearContent(); response.addheader("content-disposition",attachment); Response.ContentType = "application/vnd.ms-excel"; string tab = ""; foreach (DataColumn dc in dt.Columns) { Response.Write(tab + dc.ColumnName); tab = "\t"; } Response.Write("\n"); int i; foreach (DaTarow dr in dt.Rows) { tab = ""; for (i = 0; i < dt.Columns.Count; i++) { Response.Write(tab + dr[i].ToString()); tab = "\t"; } Response.Write("\n"); } Response.End();
在VB.NET中
Dim dt As DataTable = GetData() Dim attachment As String = "attachment; filename=Employee.xls" Response.ClearContent() response.addheader("content-disposition",attachment) Response.ContentType = "application/vnd.ms-excel" Dim tab As String = "" For Each dc As DataColumn In dt.Columns Response.Write(tab + dc.ColumnName) tab = vbTab Next Response.Write(vbLf) Dim i As Integer For Each dr As DaTarow In dt.Rows tab = "" For i = 0 To dt.Columns.Count - 1 Response.Write(tab & dr(i).ToString()) tab = vbTab Next Response.Write(vbLf) Next Response.End()
原文地址:https://www.jb51.cc/aspnet/251844.html
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。