/// <summary>
/// 将DataTable中的数据导出到Excel文件中
/// </summary>
/// <param name="page">Web页面对象</param>
/// <param name="tab">包含被导出数据的DataTable对象</param>
/// <param name="FileName">Excel文件的名称</param>
public static void Export(System.Web.UI.Page page, System.Data.DataTable tab)
{
System.Web.HttpResponse httpResponse
= page.Response;
System.Web.UI.WebControls.DataGrid dataGrid
= new System.Web.UI.WebControls.DataGrid();
dataGrid.DataSource
= tab.DefaultView;
dataGrid.AllowPaging
= false;
dataGrid.HeaderStyle.BackColor
= System.Drawing.ColorTranslator.FromHtml("#B5C7EF");
dataGrid.AlternatingItemStyle.BackColor
= System.Drawing.ColorTranslator.FromHtml("#E0E0E0");
dataGrid.HeaderStyle.ForeColor
= System.Drawing.ColorTranslator.FromHtml("#003399");
dataGrid.HeaderStyle.HorizontalAlign
= HorizontalAlign.Center;
dataGrid.HeaderStyle.Font.Bold
= true;
dataGrid.DataBind();

httpResponse.ClearContent();
httpResponse.AddHeader(
"content-disposition", "attachment; filename=MyExcelFile.xls");
httpResponse.ContentType
= "application/excel";

System.IO.StringWriter sw
= new System.IO.StringWriter();
System.Web.UI.HtmlTextWriter htw
= new System.Web.UI.HtmlTextWriter(sw);

dataGrid.RenderControl(htw);
page.Response.Write(sw.ToString());
page.Response.End();
}

相关文章: