zoukankan      html  css  js  c++  java
  • 分享一个导出Excel的类

    直接上源码不解释:

     1 using System;
     2 using System.Data;
     3 using System.Configuration;
     4 using System.Linq;
     5 using System.Web;
     6 using System.Web.Security;
     7 using System.Web.UI;
     8 using System.Web.UI.HtmlControls;
     9 using System.Web.UI.WebControls;
    10 using System.Web.UI.WebControls.WebParts;
    11 using System.Xml.Linq;
    12 
    13 
    14 public static class ExportExcel
    15 {
    16     public static void ExportByDataSet(DataSet ds, string fileName)
    17     {
    18         DataTable dtData = ds.Tables[0];
    19 
    20         //删除列,修改列头显示
    21         //dtData.Columns.Remove("");
    22         //dtData.Columns[0].ColumnName = "行ID";
    23 
    24         dtData.AcceptChanges();
    25 
    26         System.Web.UI.WebControls.GridView dgExport = null;
    27         System.Web.HttpContext curContext = System.Web.HttpContext.Current;
    28         System.IO.StringWriter strWriter = null;
    29         System.Web.UI.HtmlTextWriter htmlWriter = null;
    30         System.Web.HttpContext.Current.Response.Clear();
    31         System.Web.HttpContext.Current.Response.HeaderEncoding = System.Text.Encoding.GetEncoding("utf-8");
    32         curContext.Response.ContentType = "application/vnd.ms-excel";
    33 
    34         fileName = fileName + ".xls";
    35 
    36         curContext.Response.AppendHeader("Content-Disposition", "attachment;filename=" + HttpUtility.UrlEncode(fileName));
    37         curContext.Response.ContentEncoding = System.Text.Encoding.UTF8;
    38         System.Web.HttpContext.Current.Response.ContentEncoding = System.Text.Encoding.Default;
    39         curContext.Response.Charset = "";
    40 
    41         strWriter = new System.IO.StringWriter();
    42         htmlWriter = new System.Web.UI.HtmlTextWriter(strWriter);
    43         dgExport = new System.Web.UI.WebControls.GridView();
    44         dgExport.DataSource = dtData.DefaultView;
    45         dgExport.AllowPaging = false;
    46         dgExport.DataBind();
    47         dgExport.RenderControl(htmlWriter);
    48         curContext.Response.Write(strWriter.ToString());
    49         curContext.Response.End();
    50     }
    51    
    52 }

    使用实例(static 方法,可以被直接调用):

    1 //ds是某DataSet对象,而后面是导出的Excel保存名字
    2 ExportExcel.ExportByDataSet(ds, "PDLRFQ-" + DateTime.Now.ToString("yyyyMMdd"));
  • 相关阅读:
    dsoframer设计笔记
    pb 使用ole控制进行WORD操作失败-9
    【学习笔记】Fragment
    Suggest:the suffix for classes name
    ArrayList和LinkedList
    Android Studio入门
    asp.net ToString() 输出格式详细
    Uploadify 3.2 参数属性、事件、方法函数详解
    基础解析正则表达式
    10个优秀的 Web UI库/框架
  • 原文地址:https://www.cnblogs.com/seasons1987/p/2716193.html
Copyright © 2011-2022 走看看