zoukankan      html  css  js  c++  java
  • dataTable转excel

    1.获取数据并存储为List集合

      1)这里的list集合可以是List<Model> 也可以是List<dynamic>

    2.将list数据转换为JSON数据 

       var json = Newtonsoft.Json.JsonConvert.SerializeObject(listTrack);  
    
      DataTable dtData = null;
      if (listTrack.Count > 0)
      {
        dtData = Newtonsoft.Json.JsonConvert.DeserializeObject<DataTable>(json);
      }    

    3.实现导出功能

      1)这里可以对列进行重命名,如注释

    public static void MonthOutExcel(DataTable dtData)
            {
                if (dtData == null)
                {
                    _ReturnStatus = -1;
                    _ReturnMessage = "数据集为空!";
                    return;
                }
    
                string shtnl = "";
                shtnl = "<table border='1' cellspacing='1' cellpadding='1'>";
                shtnl = shtnl + "<thead>";
                //dtData.Columns["Id"].ColumnName = "序号";
                //dtData.Columns["ProjectType"].ColumnName = "项目类型";
                
                for (int j = 0; j < dtData.Columns.Count; j++)
                {
                    shtnl = shtnl + "<th>" + dtData.Columns[j] + "</th>";
                }
                shtnl = shtnl + "</thead><tbody>";
                for (int i = 0; i < dtData.Rows.Count; i++)
                {
                    shtnl = shtnl + "<tr>";
                    for (int j = 0; j < dtData.Columns.Count; j++)
                    {
                        shtnl = shtnl + "<td align='center'>" + dtData.Rows[i][j] + "</td>";
                    }
                    shtnl = shtnl + "</tr>";
                }
                shtnl = shtnl + "</tbody></table>";
                string FileName = "综合查询" + DateTime.Now.ToString("yyyyMMddhhmmss") + ".xls";
                ExportExcel("application/ms-excel", FileName, shtnl);
            }

    4.设置EXCEL表头格式

    public static void ExportExcel(string FieldType, string FileName, string dt)
            {
                System.Web.HttpContext.Current.Response.Charset = "utf-8";
                System.Web.HttpContext.Current.Response.AppendHeader("Content-Disposition", "attachment;filename=" + HttpUtility.UrlEncode(FileName, System.Text.Encoding.UTF8).ToString());
                System.Web.HttpContext.Current.Response.ContentEncoding = System.Text.Encoding.GetEncoding("GB2312");
                System.Web.HttpContext.Current.Response.ContentType = FieldType;
                StringWriter tw = new StringWriter();
                System.Web.HttpContext.Current.Response.Output.Write(dt);
                System.Web.HttpContext.Current.Response.Flush();
                System.Web.HttpContext.Current.Response.End();
            }

    5.最后<a href=""></a> 即可调用并下载EXCEL

      

  • 相关阅读:
    20135315宋宸宁信息安全系统设计基础期末总结
    信息安全系统设计基础第十四周学习总结
    树莓派之web服务器搭建
    读书笔记——《图解TCP/IP》(2/4)
    信息安全系统设计基础第十三周学习总结
    读书笔记——《图解TCP/IP》(1/4)
    读书笔记——《暗时间》汇总
    信息安全系统设计基础第十二周学习总结
    20135315 宋宸宁 、20135333 苏正生——实验3
    读书笔记——《暗时间》(2/2)
  • 原文地址:https://www.cnblogs.com/dushaojun/p/9121360.html
Copyright © 2011-2022 走看看