ASP.NET用DataSet导出到Excel

//读取临时文件

   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();

时间: 2024-12-20 20:00:37

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

asp.net Mvc Npoi 导出导入 excel

因近期项目遇到所以记录一下: 首先导出Excel : 首先引用NPOI包 http://pan.baidu.com/s/1i3Fosux (Action一定要用FileResult) /// <summary> /// 批量导出本校第一批派位学生 /// </summary> /// <returns></returns> public FileResult ExportStu2() { string schoolname = "401"

从DataSet 导出到Excel(是DataSet中的每个DataTable对应每个Sheet)

先来主要代码: public static void DataTableToExcel(DataSet dt, string Filename) { SaveToFile(ToExcel(dt), Filename); } 从上往下哈↓↓↓↓↓↓↓↓↓↓↓↓ private static void SaveToFile(MemoryStream ms, string fileName) { using (FileStream fs = new FileStream(fileName, FileM

asp.net 把数据导出为excel

本篇介绍c#中如何使用DataTable导出Excel,至于其他的导出方法,这里不作介绍! 1.首页从数据库读取数据,得到DataTable: DataTable dt = HelperExecuteSql.Query("select ID,name,author,newsContent,inDate from newsInfo").Tables[0]; 2.使用StringWriter类:将信息写入字符串(其命名空间为:System.IO) private StringWriter

由DataSet导出生成excel的几种方法

1.当dataset中包含了html等特殊字符用这个处理 public void CreateExcel2(DataSet ds) { //创建一个excel application Excel.Application xls_exp=null; int rowindex=1; int colindex=0; //创建一个workbook,一个worksheet Excel._Workbook xls_book=null; Excel._Worksheet xls_sheet=null; try

dataset导出成excel

之前网上查找了很多关于这类的代码.要不是中文乱码,要不是就是太复杂.这个是我用过最好用的. //ds为数据源,filename为保存的文件名 publicvoidCreateExcel(DataSet ds,stringFileName) { //设置信息 HttpContext.Current.Response.Clear(); HttpContext.Current.Response.ContentType="application/vnd.ms-excel"; HttpConte

asp中把数据导出为excel的方法

< % dim s,sql,filename,fs,myfile,x   Set fs = server.CreateObject("scripting.filesystemobject") '--假设你想让生成的EXCEL文件做如下的存放 filename = Server.MapPath("order.xls") '--如果原来的EXCEL文件存在的话删除它 if fs.FileExists(filename) then    fs.DeleteFile(

Asp.net--GridView控件--(1)高亮显示当前所在行,(2)高亮显示单击行,(3)绑定数据库数据,(4)分页,(5)导出到excel表格,(6)首列插入序号

//本页代码中的DB类及方法在http://www.cnblogs.com/Deerjiadelu/p/7252769.html中能查询到 (1)Asp.net--GridView控件--高亮显示当前所在行 protected void gvquery_DataBound(object sender, GridViewRowEventArgs e) { //高亮显示光标所在行 if (e.Row.RowType == DataControlRowType.DataRow)//判断当前行是不是数据

NPOI DataSet导出excel

/// <summary> /// DataSet导出到Excel的MemoryStream /// </summary> /// <param name="dtSource">源DataSet</param> public static MemoryStream DataSetToExcel(DataSet ds) { XSSFWorkbook workbook = new XSSFWorkbook(); for (int k = 0;

将数据库的数据导出到excel中

这篇文章主要介绍了asp中把数据导出为excel的2种方法:分别用excel组件.文件组件实现,需要的朋友可以参考下.我们在做项目的时候经常要将数据库的数据导出到excel中,很多asp用户并不知道怎么写.这里总结了两种方法来导出excel,希望能帮到大家. 方法一:用excel组件 方法二:使用文件组件 可以看出,第一种方法是直接导出的是excel文件,而第二张方法是到处的是文本文件,只不过后缀名改成了xls. 然后看起来就是excel了. 经过对比第一种方法的效率没有第二种方法的效率高,而且