Asp.net中DataTable導(dǎo)出到Excel的方法介紹
#region DataTable導(dǎo)出到Excel
/// <summary>
/// DataTable導(dǎo)出到Excel
/// </summary>
/// <param name="pData">DataTable</param>
/// <param name="pFileName">導(dǎo)出文件名</param>
/// <param name="pHeader">導(dǎo)出標(biāo)題以|分割</param>
public static void DataTableExcel(System.Data.DataTable pData, string pFileName, string pHeader)
{
System.Web.UI.WebControls.DataGrid dgExport = null;
// 當(dāng)前對話
System.Web.HttpContext curContext = System.Web.HttpContext.Current;
// IO用于導(dǎo)出并返回excel文件
System.IO.StringWriter strWriter = null;
System.Web.UI.HtmlTextWriter htmlWriter = null;
if (pData != null)
{
string UserAgent = curContext.Request.ServerVariables["http_user_agent"].ToLower();
if (UserAgent.IndexOf("firefox") == -1)//火狐瀏覽器
pFileName = HttpUtility.UrlEncode(pFileName, System.Text.Encoding.UTF8);
curContext.Response.AddHeader("Content-Disposition", "attachment; filename=" + pFileName + ".xls");
curContext.Response.ContentType = "application/vnd.ms-excel";
strWriter = new System.IO.StringWriter();
htmlWriter = new System.Web.UI.HtmlTextWriter(strWriter);
// 為了解決dgData中可能進(jìn)行了分頁的情況,需要重新定義一個(gè)無分頁的DataGrid
dgExport = new System.Web.UI.WebControls.DataGrid();
dgExport.DataSource = pData.DefaultView;
dgExport.AllowPaging = false;
dgExport.ShowHeader = false;//去掉標(biāo)題
dgExport.DataBind();
string[] arrHeader = pHeader.Split('|');
string strHeader = "<table border=\"1\" style=\"background-color:Gray;font-weight:bold;\"><tr>";
foreach (string j in arrHeader)
{
strHeader += "<td>" + j.ToString() + "</td>";
}
strHeader += "</tr></table>";
// 返回客戶端
dgExport.RenderControl(htmlWriter);
string strMeta = "<meta http-equiv=\"content-type\" content=\"application/ms-excel; charset=UTF-8\"/>";
curContext.Response.Write(strMeta + strHeader + strWriter.ToString());
curContext.Response.End();
}
}
#endregion
- .NET6導(dǎo)入和導(dǎo)出EXCEL
- Asp.Net Core實(shí)現(xiàn)Excel導(dǎo)出功能的實(shí)現(xiàn)方法
- ASP.NET Core 導(dǎo)入導(dǎo)出Excel xlsx 文件實(shí)例
- asp.net DataTable導(dǎo)出Excel自定義列名的方法
- ASP.NET使用GridView導(dǎo)出Excel實(shí)現(xiàn)方法
- Asp.Net使用Npoi導(dǎo)入導(dǎo)出Excel的方法
- asp.net導(dǎo)出excel的簡單方法實(shí)例
- asp.net導(dǎo)出Excel類庫代碼分享
- ASP.NET導(dǎo)出數(shù)據(jù)到Excel的實(shí)現(xiàn)方法
- ASP.NET用DataSet導(dǎo)出到Excel的方法
- asp.net GridView導(dǎo)出到Excel代碼
- ASP.NET MVC把表格導(dǎo)出到Excel
相關(guān)文章
為HttpClient添加默認(rèn)請求報(bào)頭的四種解決方案
這篇文章主要給大家介紹了關(guān)于為HttpClient添加默認(rèn)請求報(bào)頭的四種解決方案,文中通過示例代碼介紹的非常詳細(xì),對大家學(xué)習(xí)或者使用HttpClient具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧2019-09-09
.Net Core簡單使用Mvc內(nèi)置的Ioc(續(xù))
怎樣直接獲取Ioc中的實(shí)例對象,而不是以構(gòu)造函數(shù)的方式進(jìn)行獲取呢?這篇文章繼續(xù)為大家介紹.Net Core簡單使用Mvc內(nèi)置的Ioc2018-03-03
ASP.NET中GridView和Repeater重復(fù)數(shù)據(jù)如何合并
這篇文章主要介紹了ASP.NET中GridView和Repeater重復(fù)數(shù)據(jù)合并的方法,感興趣的小伙伴們可以參考一下2016-08-08
Elasticsearch.Net使用教程 MVC4圖書管理系統(tǒng)(2)
這篇文章主要介紹了Elasticsearch.Net使用教程教會(huì)大家利用MVC4制作圖書管理系統(tǒng),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2016-11-11
ASP.NET(C#)驗(yàn)證數(shù)字的兩種方法
ASP.NET(C#)驗(yàn)證數(shù)字的兩種方法,需要的朋友可以參考一下2013-06-06
.NET客戶端實(shí)現(xiàn)Redis中的管道(PipeLine)與事物(Transactions)
本文主要介紹了.NET客戶端實(shí)現(xiàn)Redis中的管道(PipeLine)與事物(Transactions)的相關(guān)知識。具有很好的參考價(jià)值,下面跟著小編一起來看下吧2017-03-03

