大家可能觉得上面的代码比较复杂,因为上面对于对打印要求比较高的应用,是十分有效的。如果只是单单对数据进行导出,还可以使用简单的格式,比如使用以下的代码:
Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load Dim dt As DataTable = CType(Application.Item("MyDataTable"), DataTable) Response.ContentType = "application/ms-Excel" Response.AddHeader("Content-Disposition", "inline;filename=test.xls") Response.Write(ConvertDtToTDF(dt))End SubPrivate Function ConvertDtToTDF(ByVal dt As DataTable) As String Dim dr As DataRow, ary() As Object, i As Integer Dim iCol As Integer ' 输出列标题 For iCol = 0 To dt.Columns.Count - 1 Response.Write(dt.Columns(iCol).ToString & vbTab) Next Response.Write(vbCrLf) '输出数据 For Each dr In dt.Rows ary = dr.ItemArray For i = 0 To UBound(ary) Response.Write(ary(i).ToString & vbTab) Next Response.Write(vbCrLf) NextEnd FunctionEnd Class