最近工作中需要做一个把用户信息作为excel导出的功能,就顺便整理搜集了一些常用的导出文件的源代码,以供以后不时之需,也希望能给大家带来一些方便

一、DataSet数据集内数据转化为Excel

// 作用:把DataSet数据集内数据转化为Excel文件
// 描述:这些关于Excel的导出方法,基本可以实现日常须要,其中有些方法可以把数据导出后
// 生成Xml格式,再导入数据库! 
// 备注:请引用Office相应COM组件,导出Excel对象的一个方法要调用其中的一些方法和属性。

public void DataSetToExcel(DataSet ds,string FileName) 
{ 
   try 
   { 
      //Web页面定义 
      //System.Web.UI.Page mypage=new System.Web.UI.Page(); 

      HttpResponse resp; 
      resp=HttpContext.Current.Response; 
      resp.ContentEncoding=System.Text.Encoding.GetEncoding("GB2312"); 
      resp.AppendHeader("Content-disposition","attachment;filename="+FileName+".xls"); 
      resp.ContentType="application/ms-excel"; 

      //变量定义 
      string colHeaders=null; 
      string Is_item=null; 

      //显示格式定义//////////////// 


      //文件流操作定义 
      //FileStream fs=new FileStream(FileName,FileMode.Create,FileAccess.Write); 
      //StreamWriter sw=new StreamWriter(fs,System.Text.Encoding.GetEncoding("GB2312")); 

      StringWriter sfw=new StringWriter(); 
      //定义表对象与行对象,同时用DataSet对其值进行初始化 
      System.Data.DataTable dt=ds.Tables[0]; 
      DataRow[] myRow=dt.Select(); 
      int i=0; 
      int cl=dt.Columns.Count; 

      //取得数据表各列标题,各标题之间以\t分割,最后一个列标题后加回车符 
      for(i=0;i<cl;i++) 
      { 
         //if(i==(cl-1))  //最后一列,加\n 
         // colHeaders+=dt.Columns[i].Caption.ToString(); 
         //else 
         colHeaders+=dt.Columns[i].Caption.ToString()+"\t"; 
      } 
      sfw.WriteLine(colHeaders); 
      //sw.WriteLine(colHeaders); 

      //逐行处理数据 
      foreach(DataRow row in myRow) 
      { 
         //当前数据写入 
         for(i=0;i<cl;i++) 
         { 
          //if(i==(cl-1)) 
          //   Is_item+=row[i].ToString()+"\n"; 
          //else 
          Is_item+=row[i].ToString()+"\t"; 
         } 
         sfw.WriteLine(Is_item); 
         //sw.WriteLine(Is_item); 
         Is_item=null; 
      } 
      resp.Write(sfw); 
      //resp.Clear(); 
      resp.End(); 
   } 
   catch(Exception e) 
   { 
      throw e; 
   } 
}
View Code

相关文章:

  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-02-18
  • 2021-09-17
  • 2022-12-23
  • 2021-08-15
猜你喜欢
  • 2021-10-06
  • 2021-12-04
  • 2022-12-23
  • 2021-06-13
  • 2021-12-07
  • 2021-08-18
  • 2022-12-23
相关资源
相似解决方案