本文实例讲述了ASP.NET使用GridView导出Excel实现方法。分享给大家供大家参考。具体实现方法如下:
复制代码 代码如下:/// <summary>  
/// 将DataTable数据导出到EXCEL,调用该方法后自动返回可下载的文件流  
/// </summary>  
/// <param name="dtData">要导出的数据源</param>  
public static void DataTable1Excel(System.Data.DataTable dtData)  
{  
        System.Web.UI.WebControls.GridView gvExport = null;  
        // 当前对话  
        System.Web.HttpContext curContext = System.Web.HttpContext.Current;  
        // IO用于导出并返回excel文件  
        System.IO.StringWriter strWriter = null;  
        System.Web.UI.HtmlTextWriter htmlWriter = null;  
  
        if (dtData != null)  
        {  
            // 设置编码和附件格式  
            curContext.Response.ContentType = "application/vnd.ms-excel";  
            curContext.Response.ContentEncoding = System.Text.Encoding.GetEncoding("gb2312");  
            curContext.Response.Charset = "utf-8";  
  
            // 导出excel文件  
            strWriter = new System.IO.StringWriter();  
            htmlWriter = new System.Web.UI.HtmlTextWriter(strWriter);  
            // 为了解决gvData中可能进行了分页的情况,需要重新定义一个无分页的GridView  
            gvExport = new System.Web.UI.WebControls.GridView();  
            gvExport.DataSource = dtData.DefaultView;  
            gvExport.AllowPaging = false;  
            gvExport.DataBind();  
  
            // 返回客户端  
            gvExport.RenderControl(htmlWriter);  
            curContext.Response.Write("<meta http-equiv=\"Content-Type\" content=\"text/html; charset=gb2312\" />" + strWriter.ToString());  
            curContext.Response.End();  
        }  
}  
  
/// <summary>  
/// 直接输出Excel  
/// </summary>  
/// <param name="dtData"></param>  
public static void DataTable2Excel(System.Data.DataTable dtData)  
{  
          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 (dtData != null)  
      {  
        // 设置编码和附件格式  
        curContext.Response.ContentType = "application/vnd.ms-excel";  
        curContext.Response.ContentEncoding =System.Text.Encoding.UTF8;  
        curContext.Response.Charset = "";  
                  
        // 导出excel文件  
        strWriter = new System.IO.StringWriter();  
        htmlWriter = new System.Web.UI.HtmlTextWriter(strWriter);  
  
        // 为了解决dgData中可能进行了分页的情况,需要重新定义一个无分页的DataGrid  
        dgExport = new System.Web.UI.WebControls.DataGrid();           
        dgExport.DataSource = dtData.DefaultView;  
        dgExport.AllowPaging = false;  
        dgExport.DataBind();  
  
        // 返回客户端  
        dgExport.RenderControl(htmlWriter);    
        curContext.Response.Write(strWriter.ToString());  
        curContext.Response.End();  
      }  
}
希望本文所述对大家的asp.net程序设计有所帮助。
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
稳了!魔兽国服回归的3条重磅消息!官宣时间再确认!
昨天有一位朋友在大神群里分享,自己亚服账号被封号之后居然弹出了国服的封号信息对话框。
这里面让他访问的是一个国服的战网网址,com.cn和后面的zh都非常明白地表明这就是国服战网。
而他在复制这个网址并且进行登录之后,确实是网易的网址,也就是我们熟悉的停服之后国服发布的暴雪游戏产品运营到期开放退款的说明。这是一件比较奇怪的事情,因为以前都没有出现这样的情况,现在突然提示跳转到国服战网的网址,是不是说明了简体中文客户端已经开始进行更新了呢?
更新日志
- 小骆驼-《草原狼2(蓝光CD)》[原抓WAV+CUE]
 - 群星《欢迎来到我身边 电影原声专辑》[320K/MP3][105.02MB]
 - 群星《欢迎来到我身边 电影原声专辑》[FLAC/分轨][480.9MB]
 - 雷婷《梦里蓝天HQⅡ》 2023头版限量编号低速原抓[WAV+CUE][463M]
 - 群星《2024好听新歌42》AI调整音效【WAV分轨】
 - 王思雨-《思念陪着鸿雁飞》WAV
 - 王思雨《喜马拉雅HQ》头版限量编号[WAV+CUE]
 - 李健《无时无刻》[WAV+CUE][590M]
 - 陈奕迅《酝酿》[WAV分轨][502M]
 - 卓依婷《化蝶》2CD[WAV+CUE][1.1G]
 - 群星《吉他王(黑胶CD)》[WAV+CUE]
 - 齐秦《穿乐(穿越)》[WAV+CUE]
 - 发烧珍品《数位CD音响测试-动向效果(九)》【WAV+CUE】
 - 邝美云《邝美云精装歌集》[DSF][1.6G]
 - 吕方《爱一回伤一回》[WAV+CUE][454M]