• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    Asp.net中DataTable导出到Excel的方法介绍

    复制代码 代码如下:

    #region  DataTable导出到Excel
            /// summary>
            /// DataTable导出到Excel
            /// /summary>
            /// param name="pData">DataTable/param>
            /// param name="pFileName">导出文件名/param>
            /// param name="pHeader">导出标题以|分割/param>
            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 = "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

    您可能感兴趣的文章:
    • asp.net实现导出DataTable数据到Word或者Excel的方法
    • asp.net实现数据从DataTable导入到Excel文件并创建表的方法
    • asp.net 读取Excel数据到DataTable的代码
    • ASP.NET DataTable去掉重复行的2种方法
    • ASP.NET中DataTable与DataSet之间的转换示例
    • ASP.NET怎么操作DataTable实例应用
    • Asp.net下使用Jquery Ajax传送和接收DataTable的代码
    • asp.net 数据库的连接和datatable类
    • Asp.net静态方法之Grid转DataTable方法实现步骤
    • Asp.net实现选择性的保留DataTable中的列
    • asp.net DataTable导出Excel自定义列名的方法
    上一篇:.net中as和is之间的区别分析
    下一篇:ASP.NET记录错误日志的实现方法
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

    Asp.net中DataTable导出到Excel的方法介绍 Asp.net,中,DataTable,导出,到,