8赞
413
当前位置:  开发笔记 > 后端 > 正文

ASP.NET使用GridView导出Excel实现方法

这篇文章主要介绍了ASP.NET使用GridView导出Excel实现方法,是asp.net操作office文件的一个典型应用,代码中备有较为详尽的注释便于读者理解,需要的朋友可以参考下

本文实例讲述了ASP.NET使用GridView导出Excel实现方法。分享给大家供大家参考。具体实现方法如下:

代码如下:
///  
/// 将DataTable数据导出到EXCEL,调用该方法后自动返回可下载的文件流 
///
 
/// 要导出的数据源 
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("" + strWriter.ToString()); 
            curContext.Response.End(); 
        } 

 
///  
/// 直接输出Excel 
///
 
///  
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程序设计有所帮助。


推荐阅读
  • 题目链接http:acm.hust.edu.cnvjudgeproblem19689解题思路寻找最小上界用二分法打印方案时从右边(尾)尽量往左边(头)划分。段数不够的话,从最左边往 ... [详细]
  • 1在linux下的ssh命令:vimetcsshssh_config然后找到里面的ServerAliveInterval参数,如果没有你同样自己加一个就好了。参数意义相同,都是秒数 ... [详细]
  • angular2过滤器 ... [详细]
  • 根据二叉树的中序遍历和前序遍历,还原二叉树
    现在有一个问题,已知二叉树的前序遍历和中序遍历:PreOrder:GDAFEMHZInOrder:ADEFGHMZ我们如何还原这颗二叉树,并求出他的后序遍历?我们基于一个事实:中序 ... [详细]
  • 题目:不使用临时变量交换两个变量值分析:使用加、减、乘、亦或(a^b^ab),四种 ... [详细]
  • FastMM是非常优秀的内存管理器,但是从FastMM4Options.inc中找到合适自已程序的选项设置免不了一顿英文的纠缠,所以我把这个文件里的所有英文注释都翻译成了中文。如果 ... [详细]
  • ?? 方法一: [root@vmrac1~]#su-grid [grid@vmrac1~]$sqlplusassysasm SQL*Plus:Release11 ... [详细]
  • UIGrid+自适应
    如下图所示:一个Grid下面有六个Button,它们需要在不同的分辨下拉伸适应(Horizontal)宽度,以保证填充满底部首先有这两个要点:1、UIGrid中的CellWidth ... [详细]
  • 父类functionParent(){this.eyes'blue'}Parent.prototype.getEyesfunctiongetEyes(){conso ... [详细]
  • 客户端有多个地方需要使用Javaclient:在存在的集群中执行标准的index, get, delete和search在集群中执行管理任务当你要运行嵌套在你的应用程序中的Elas ... [详细]
  • 题目地址:传送门 H- InnaandChooseOptions TimeLimit:1000MS     MemoryLimit:262144KB     ... [详细]
  • 一、paramiko模块paramiko是用Python语言写的一个模块,遵循SSH2协议,支持以加密和认证的方式,进行远程服务器的连接。paramiko主要是通过ssh协议对远程 ... [详细]
  • 255)fc255;if(bc255)bc255;intrfc+random.nextInt(bc-fc);intgfc+random.nextInt(bc-fc);intbfc ... [详细]
  • 浅谈RFID技术在电子巡更中的作用
    “电子巡更机”,很多人都不太认识这个是什么?那么对于电子技术专业的人来说,如果,说起“RFID”可能就会认识。今天我们来聊一聊,基于RFID技术的智能巡更系统。我们都知道读卡技术中 ... [详细]
  • 文件归档压缩: 压缩、解压缩命令 压缩格式:gz、bz2、xz、zip、z 压缩算法:算法不同,压缩比也会不同 compress:FILENAME. ... [详细]
author-avatar
手机用户2602918637
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有