zoukankan      html  css  js  c++  java
  • C#导出数据到Excel通用的方法类

    导出数据到Excel通用的方法类,请应对需求自行修改。

    资源下载列表

    using System.Data;
    using System.IO;
    
    
    namespace IM.Common.Tools
    {
        public class Export
        {
            public string Encoding = "UTF-8";
            System.Web.HttpResponse response = System.Web.HttpContext.Current.Response;
    
            public void EcportExcel(DataTable dt, string fileName)
            {
    
                if (dt != null)
                {
                    StringWriter sw = new StringWriter();
                    CreateStringWriter(dt, ref sw);
                    sw.Close();
                    response.Clear();
                    response.Buffer = true;
                    response.Charset = Encoding;
                    //this.EnableViewState = false;
                    response.AddHeader("Content-Disposition", "attachment; filename=" + fileName + ".xls");
                    response.ContentType = "application/ms-excel";
    
                    //response.ContentEncoding = System.Text.Encoding.GetEncoding(Encoding)
                    response.ContentEncoding = System.Text.Encoding.UTF8;
                    response.Write(sw);
                    response.End();
                }
    
            }
    
            private void CreateStringWriter(DataTable dt, ref StringWriter sw)
            {
                string sheetName = "sheetName";
    
                sw.WriteLine("<html xmlns:x="urn:schemas-microsoft-com:office:excel">");
                sw.WriteLine("<head>");
                sw.WriteLine("<!--[if gte mso 9]>");
                sw.WriteLine("<xml>");
                sw.WriteLine(" <x:ExcelWorkbook>");
                sw.WriteLine(" <x:ExcelWorksheets>");
                sw.WriteLine(" <x:ExcelWorksheet>");
                sw.WriteLine(" <x:Name>" + sheetName + "</x:Name>");
                sw.WriteLine(" <x:WorksheetOptions>");
                sw.WriteLine(" <x:Print>");
                sw.WriteLine(" <x:ValidPrinterInfo />");
                sw.WriteLine(" </x:Print>");
                sw.WriteLine(" </x:WorksheetOptions>");
                sw.WriteLine(" </x:ExcelWorksheet>");
                sw.WriteLine(" </x:ExcelWorksheets>");
                sw.WriteLine("</x:ExcelWorkbook>");
                sw.WriteLine("</xml>");
                sw.WriteLine("<![endif]-->");
                sw.WriteLine("</head>");
                sw.WriteLine("<body>");
                sw.WriteLine("<table>");
                sw.WriteLine(" <tr>");
                string[] columnArr = new string[dt.Columns.Count];
                int i = 0;
                foreach (DataColumn columns in dt.Columns)
                {
    
                    sw.WriteLine(" <td>" + columns.ColumnName + "</td>");
                    columnArr[i] = columns.ColumnName;
                    i++;
                }
                sw.WriteLine(" </tr>");
    
                foreach (DataRow dr in dt.Rows)
                {
                    sw.WriteLine(" <tr>");
                    foreach (string columnName in columnArr)
                    {
                        sw.WriteLine(" <td style='vnd.ms-excel.numberformat:@'>" + dr[columnName] + "</td>");
                    }
                    sw.WriteLine(" </tr>");
                }
                sw.WriteLine("</table>");
                sw.WriteLine("</body>");
                sw.WriteLine("</html>");
            }
        }
    }
  • 相关阅读:
    AcWing 37. 树的子结构
    AcWing 30. 正则表达式匹配 (剑指OFFER leetcode 10)
    Leetcode 514 自由之路
    AcWing 28. 在O(1)时间删除链表结点
    solrCloud+tomcat+zookeeper配置
    ZooKeeper原理及配置
    ZooKeeper原理及配置
    ZooKeeper原理及配置
    SolrCloud Hello Word
    SolrCloud Hello Word
  • 原文地址:https://www.cnblogs.com/huhangfei/p/4997201.html
Copyright © 2011-2022 走看看