//读取临时文件
   GYYW.DA.Common.Base_SqlDataBase daBZDM = new GYYW.DA.Common.Base_SqlDataBase();
   DataSet dsBZDM = daBZDM.GetDataSetBySql("select QCDM,MC,GG from WG_BZDM where QCDM like '02%'");
 
 
   //同时将虚拟目录下的Data作为临时文件目录。
   string urlPath = HttpContext.Current.Request.ApplicationPath + "/Data/";
   string physicPath = HttpContext.Current.Server.MapPath(urlPath);
   //string fileName = Guid.NewGuid() + ".Xls";
   string fileName ="DownLoad.Xls";
   string connString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + physicPath + fileName +";Extended Properties=Excel 8.0;";
 
   OleDbConnection objConn = new OleDbConnection(connString);
   OleDbCommand objCmd = new OleDbCommand();
   objCmd.Connection = objConn;
   objCmd.Connection.Open();
 
 
   //建立表结构
   objCmd.CommandText = @"CREATE TABLE Sheet1(器材代码 varchar,名称 varchar, 规格 varchar)";
   objCmd.ExecuteNonQuery();
 
   //建立插入动作的Command
 
   objCmd.CommandText = "INSERT INTO Sheet1(器材代码, 名称,规格) VALUES (@QCDM, @MC, @GG)";
 
   objCmd.Parameters.Clear();
 
   objCmd.Parameters.Add(new OleDbParameter("@QCDM", OleDbType.VarChar));
   objCmd.Parameters.Add(new OleDbParameter("@MC", OleDbType.VarChar));
   objCmd.Parameters.Add(new OleDbParameter("@GG",OleDbType.VarChar));
  
   //遍历DataSet将数据插入新建的Excel文件中
   foreach (DataRow row in dsBZDM.Tables[0].Rows)
   {  
    for (int i=0; i<objCmd.Parameters.Count; i++)
    {
     objCmd.Parameters[i].Value = row[i];
    }
    objCmd.ExecuteNonQuery();
   }
   objCmd.Connection.Close();
 
   //提供下载
   //清除临时文件
   HttpResponse response = HttpContext.Current.Response;
   response.Clear();
   //为输出作准备
   response.WriteFile(urlPath + fileName);
   string httpHeader="attachment;filename=KCMX.Xls";
   response.AppendHeader("Content-Disposition", httpHeader);
   response.Flush();
   //输出完毕后清除临时文件
   string strSaveDir = "../Data/";
   string strFile = Server.MapPath(strSaveDir + fileName).ToString();
   //string sss = urlPath + fileName;
   System.IO.File.Delete(strFile);//删除临时文件
   response.End();

ASP.NET用DataSet导出到Excel的更多相关文章

  1. asp.net教程:GridView导出到Excel或Word文件

    asp.net教程:GridView导出到Excel或Word文件</ br> 在项目中我们经常会遇到要求将一些数据导出成Excel或者Word表格的情况,比如中国移动(我是中国移动用户) ...

  2. asp.net将数据导出到excel

    本次应用datatable导出,若用gridview(假设gridview设为了分页显示)会出现只导出当前页的情况. protected void btnPrn_Click(object sender ...

  3. .net DataSet 导出到Excel

    public void CreateExcel(DataSet ds, string typeid, stringFileName)        {           HttpResponse r ...

  4. DataSet导出到Excel,并生成文件(C#实现,可合并行和列)

    using System; using System.IO; using System.Data; using System.Reflection; using System.Diagnostics; ...

  5. asp.net Mvc Npoi 导出导入 excel

    因近期项目遇到所以记录一下: 首先导出Excel : 首先引用NPOI包 http://pan.baidu.com/s/1i3Fosux (Action一定要用FileResult) /// < ...

  6. asp.net将内容导出到Excel,Table表格数据(html)导出EXCEL

    代码: /// <summary> /// HTML Table表格数据(html)导出EXCEL /// </summary> /// <param name=&quo ...

  7. asp.net 把数据导出为excel

    本篇介绍c#中如何使用DataTable导出Excel,至于其他的导出方法,这里不作介绍! 1.首页从数据库读取数据,得到DataTable: DataTable dt = HelperExecute ...

  8. ASP.NET- 使用NPOI导入导出标准Excel

    尝试过很多Excel导入导出方法,都不太理想,无意中逛到oschina时,发现了NPOI,无需Office COM组件且不依赖Office,顿时惊为天人,怀着无比激动的心情写下此文. 曾使用过的方法 ...

  9. dataset导出成excel

    之前网上查找了很多关于这类的代码.要不是中文乱码,要不是就是太复杂.这个是我用过最好用的. //ds为数据源,filename为保存的文件名 publicvoidCreateExcel(DataSet ...

随机推荐

  1. Java实现Kmeans算法

    Kmeans算法的Java实现.源代码放在github上,大家有兴趣能够下下来看看, 源代码地址: https://github.com/l294265421/algorithm-kmeans 实现该 ...

  2. Freemarker操作字符串

    1.substring(start,end)从一个字符串中截取子串start:截取子串开始的索引,start必须大于等于0,小于等于endend: 截取子串的长度,end必须大于等于0,小于等于字符串 ...

  3. PHP和MySQL实现消息队列

    最近遇到一个批量发送短信的需求,短信接口是第三方提供的.刚开始想到,获取到手机号之后,循环调用接口发送不就可以了吗? 但很快发现问题:当短信数量很大时,不仅耗时,而且成功率很低. 于是想到,用PHP和 ...

  4. PHP递归算法的简单实例

    递归函数为自调用函数,在函数体内直接或直接自个调用自个,但需求设置自调用的条件,若满意条件,则调用函数自身,若不满意则停止本函数的自调用,然后把目前流程的主控权交回给上一层函数来履行,也许这么给我们解 ...

  5. SpringBoot系列九:SpringBoot服务整合(整合邮件服务、定时调度、Actuator监控)

    声明:本文来源于MLDN培训视频的课堂笔记,写在这里只是为了方便查阅. 1.概念:SpringBoot 服务整合 2.背景 在进行项目开发的时候经常会遇见以下的几个问题:需要进行邮件发送.定时的任务调 ...

  6. freetds设置超时

    freetds的超时一般在其配置文件中有设置,实际上程序中也可以设置,动用两个api dbsetlogintime dbsettime 设置在dbopen之前,如下所示: 表示设置登录超时5秒,读写超 ...

  7. memcached -- 运行memcached

    Memcached 运行 Memcached命令的运行: $ /usr/local/memcached/bin/memcached -h 注意:如果使用自动安装, memcached 命令位于 /us ...

  8. 使用Camera功能 AREA的理解

    转至 http://blog.csdn.net/think_soft/article/details/7998478 使用Camera功能 大多数的Camera功能都是使用Camera.Paramet ...

  9. (实用)Ubuntu Linux静态IP网络配置

    记录备忘. 基于Ubuntu 14.04 LTS Server. 首先查看一下当前系统的网卡: $ sudo iconfig 比如这里我除了回环网路lo外,网络接口名为em1,下面就去给它配置网络. ...

  10. oracle 11g RAC 在Windows 7下安装

    oracle 11g RAC 在Windows 7下安装 完全要参考RAC11gR2OnWindows.pdf 难点总是在Grid Infrastructure 而安装Grid Infrastruct ...