这篇文章主要介绍“Asp.net中DataTable导出到Excel的方法”,在日常操作中,相信很多人在Asp.net中DataTable导出到Excel的方法问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Asp.net中DataTable导出到Excel的方法”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!
创新互联公司10多年成都企业网站定制服务;为您提供网站建设,网站制作,网页设计及高端网站定制服务,成都企业网站定制及推广,对垃圾桶等多个领域拥有多年建站经验的网站建设公司。复制代码 代码如下:
#region DataTable导出到Excel
///
/// DataTable导出到Excel
///
/// DataTable
/// 导出文件名
/// 导出标题以|分割
public static void DataTableExcel(System.Data.DataTable pData, string pFileName, string pHeader)
{
System.Web.UI.WebControls.DataGrid dgExport = null;
// 当前对话
System.Web.HttpContext curContext = System.Web.HttpContext.Current;
// IO用于导出并返回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中可能进行了分页的情况,需要重新定义一个无分页的DataGrid
dgExport = new System.Web.UI.WebControls.DataGrid();
dgExport.DataSource = pData.DefaultView;
dgExport.AllowPaging = false;
dgExport.ShowHeader = false;//去掉标题
dgExport.DataBind();
string[] arrHeader = pHeader.Split('|');
string strHeader = "
" + j.ToString() + " | ";
// 返回客户端
dgExport.RenderControl(htmlWriter);
string strMeta = "";
curContext.Response.Write(strMeta + strHeader + strWriter.ToString());
curContext.Response.End();
}
}
#endregion
到此,关于“Asp.net中DataTable导出到Excel的方法”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注创新互联网站,小编会继续努力为大家带来更多实用的文章!
当前文章:Asp.net中DataTable导出到Excel的方法-创新互联
本文链接:http://lswzjz.com/article/dgjhio.html