dataset 导入 excel参考 http://topic.csdn.net/t/20050119/16/3738430.html

转载 2007年09月19日 10:22:00
你可以dataset   导入   excel参考  
  http://community.csdn.net/Expert/topic/3077/3077526.xml?temp=.8746912  
  http://www.dev-club.com/club/bbs/showEssence.asp?id=26350  
   
  http://dev.csdn.net/Develop/article/18/18623.shtm  
  http://community.csdn.net/Expert/topic/3112/3112296.xml?temp=.926861  
  http://dotnet.aspx.cc/ShowDetail.aspx?id=BF0A54F9-C7C7-4200-BD9A-802AC1F5DE50  
   
   
  http://expert.csdn.net/Expert/TopicView1.asp?id=2928057  
   
  www.foxhis.com/powermjtest/  
  原文代码:  
   
   
   
   
  private   void   Button1_Click(object   sender,   System.EventArgs   e)  
  {  
      //写入Excel的方法:  
      //定义需要参数。  
      string   SourceFile="Data.XLS";                                                                 //源文件名称。  
      string   TemplatePath=Server.MapPath("ExcelTemplate");         //存放源文件的文件夹路径。  
      string   DownloadPath=Server.MapPath("ExcelDownload");         //副本的文件夹路径。  
      //副本的文件名。  
      string   TempFileName   =   DateTime.Now.ToString("yyyyMMdd")   +   DateTime.Now.Hour   +   DateTime.Now.Minute   +   DateTime.Now.Second   +   ".XLS";      
      object   missing   =   System.Reflection.Missing.Value;  
      Excel.Application   myExcel=new   Excel.Application();  
      //打开新文件  
      myExcel.Application.Workbooks.Open(TemplatePath+"//"+SourceFile,missing,missing,missing,missing,  
  missing,missing,missing,missing,missing,missing,   missing,missing);    
      Excel.Workbook   myBook=myExcel.Workbooks[1];  
      Excel.Worksheet   curSheet   =   (Excel.Worksheet)myBook.Sheets[2];  
   
      string   DownloadFilePath=DownloadPath+"//"+TempFileName;  
   
      int   i=0;  
      while   (i<=10)  
      {  
          myExcel.Cells[4+i,2]=i.ToString();  
          myExcel.Cells[4+i,3]=i.ToString();  
          myExcel.Cells[4+i,4]=i.ToString();  
          myExcel.Cells[4+i,5]=i.ToString();  
          myExcel.Cells[4+i,6]=i.ToString();  
          i++;  
      }        
   
      myBook.Saved=true;  
      //myBook.SaveAs(DownloadFilePath,missing,"","",false,false,Excel.XlSaveAsAccessMode.xlNoChange,1,false,missing,missing);  
   
      myBook.PrintPreview(0);  
      //myBook.PrintOut(missing,missing,missing,missing,missing,missing,missing,missing);  
      myBook.Close(false,   null,null);  
      myExcel.Quit();  
      System.Runtime.InteropServices.Marshal.ReleaseComObject(myBook);  
      System.Runtime.InteropServices.Marshal.ReleaseComObject(myExcel);  
      myBook   =   null;  
      myExcel   =   null;  
      GC.Collect();  
      //Response.Redirect("ExcelDownload//"+TempFileName); //下载文件  
  }   
 如果要设置颜色,  
   
  public   void   OutputExcel(DataView   dv,string   str)  
  {  
  //  
  //   TODO:   在此处添加构造函数逻辑  
  //  
                                                        //dv为要输出到Excel的数据,str为标题名称  
  GC.Collect();  
  Application   excel;//   =   new   Application();  
  int   rowIndex=4;  
  int   colIndex=1;  
   
  _Workbook   xBk;  
  _Worksheet   xSt;  
   
  excel=   new   ApplicationClass();  
   
  xBk   =   excel.Workbooks.Add(true);  
   
  xSt   =   (_Worksheet)xBk.ActiveSheet;  
   
  //  
  //取得标题  
  //  
  foreach(DataColumn   col   in   dv.Table.Columns)  
  {  
  colIndex++;  
  excel.Cells[4,colIndex]   =   col.ColumnName;  
  xSt.get_Range(excel.Cells[4,colIndex],excel.Cells[4,colIndex]).HorizontalAlignment   =   XlVAlign.xlVAlignCenter;//设置标题格式为居中对齐  
  }  
   
  //  
  //取得表格中的数据  
  //  
  foreach(DataRowView   row   in   dv)  
  {  
  rowIndex   ++;  
  colIndex   =   1;  
  foreach(DataColumn   col   in   dv.Table.Columns)  
  {  
  colIndex   ++;  
  if(col.DataType   ==   System.Type.GetType("System.DateTime"))  
  {  
  excel.Cells[rowIndex,colIndex]   =   (Convert.ToDateTime(row[col.ColumnName].ToString())).ToString("yyyy-MM-dd");  
  xSt.get_Range(excel.Cells[rowIndex,colIndex],excel.Cells[rowIndex,colIndex]).HorizontalAlignment   =   XlVAlign.xlVAlignCenter;//设置日期型的字段格式为居中对齐  
  }  
  else  
  if(col.DataType   ==   System.Type.GetType("System.String"))  
  {  
  excel.Cells[rowIndex,colIndex]   =   "'"+row[col.ColumnName].ToString();  
  xSt.get_Range(excel.Cells[rowIndex,colIndex],excel.Cells[rowIndex,colIndex]).HorizontalAlignment   =   XlVAlign.xlVAlignCenter;//设置字符型的字段格式为居中对齐  
  }  
  else  
  {  
  excel.Cells[rowIndex,colIndex]   =   row[col.ColumnName].ToString();  
  }  
  }  
  }  
  //  
  //加载一个合计行  
  //  
  int   rowSum   =   rowIndex   +   1;  
  int   colSum   =   2;  
  excel.Cells[rowSum,2]   =   "合计";  
  xSt.get_Range(excel.Cells[rowSum,2],excel.Cells[rowSum,2]).HorizontalAlignment   =   XlHAlign.xlHAlignCenter;  
  //  
  //设置选中的部分的颜色  
  //  
  xSt.get_Range(excel.Cells[rowSum,colSum],excel.Cells[rowSum,colIndex]).Select();  
  xSt.get_Range(excel.Cells[rowSum,colSum],excel.Cells[rowSum,colIndex]).Interior.ColorIndex   =   19;//设置为浅黄色,共计有56种  
  //  
  //取得整个报表的标题  
  //  
  excel.Cells[2,2]   =   str;  
  //  
  //设置整个报表的标题格式  
  //  
  xSt.get_Range(excel.Cells[2,2],excel.Cells[2,2]).Font.Bold   =   true;  
  xSt.get_Range(excel.Cells[2,2],excel.Cells[2,2]).Font.Size   =   22;  
  //  
  //设置报表表格为最适应宽度  
  //  
  xSt.get_Range(excel.Cells[4,2],excel.Cells[rowSum,colIndex]).Select();  
  xSt.get_Range(excel.Cells[4,2],excel.Cells[rowSum,colIndex]).Columns.AutoFit();  
  //  
  //设置整个报表的标题为跨列居中  
  //  
  xSt.get_Range(excel.Cells[2,2],excel.Cells[2,colIndex]).Select();  
  xSt.get_Range(excel.Cells[2,2],excel.Cells[2,colIndex]).HorizontalAlignment   =   XlHAlign.xlHAlignCenterAcrossSelection;  
  //  
  //绘制边框  
  //  
  xSt.get_Range(excel.Cells[4,2],excel.Cells[rowSum,colIndex]).Borders.LineStyle   =   1;  
  xSt.get_Range(excel.Cells[4,2],excel.Cells[rowSum,2]).Borders[XlBordersIndex.xlEdgeLeft].Weight   =   XlBorderWeight.xlThick;//设置左边线加粗  
  xSt.get_Range(excel.Cells[4,2],excel.Cells[4,colIndex]).Borders[XlBordersIndex.xlEdgeTop].Weight   =   XlBorderWeight.xlThick;//设置上边线加粗  
  xSt.get_Range(excel.Cells[4,colIndex],excel.Cells[rowSum,colIndex]).Borders[XlBordersIndex.xlEdgeRight].Weight   =   XlBorderWeight.xlThick;//设置右边线加粗  
  xSt.get_Range(excel.Cells[rowSum,2],excel.Cells[rowSum,colIndex]).Borders[XlBordersIndex.xlEdgeBottom].Weight   =   XlBorderWeight.xlThick;//设置下边线加粗  
  //  
  //显示效果  
  //  
  excel.Visible=true;  
   
  //xSt.Export(Server.MapPath(".")+"//"+this.xlfile.Text+".xls",SheetExportActionEnum.ssExportActionNone,Microsoft.Office.Interop.OWC.SheetExportFormat.ssExportHTML);  
  xBk.SaveCopyAs(Server.MapPath(".")+"//"+this.xlfile.Text+".xls");  
   
  ds   =   null;  
                          xBk.Close(false,   null,null);  
   
                          excel.Quit();  
                          System.Runtime.InteropServices.Marshal.ReleaseComObject(xBk);  
                          System.Runtime.InteropServices.Marshal.ReleaseComObject(excel);  
    System.Runtime.InteropServices.Marshal.ReleaseComObject(xSt);  
                          xBk   =   null;  
                          excel   =   null;  
  xSt   =   null;  
                          GC.Collect();  
  string   path   =   Server.MapPath(this.xlfile.Text+".xls");  
   
  System.IO.FileInfo   file   =   new   System.IO.FileInfo(path);  
  Response.Clear();  
  Response.Charset="GB2312";  
  Response.ContentEncoding=System.Text.Encoding.UTF8;  
  //   添加头信息,为"文件下载/另存为"对话框指定默认文件名  
  Response.AddHeader("Content-Disposition",   "attachment;   filename="   +   Server.UrlEncode(file.Name));  
  //   添加头信息,指定文件大小,让浏览器能够显示下载进度  
  Response.AddHeader("Content-Length",   file.Length.ToString());  
   
  //   指定返回的是一个不能被客户端读取的流,必须被下载  
  Response.ContentType   =   "application/ms-excel";  
   
  //   把文件流发送到客户端  
  Response.WriteFile(file.FullName);  
  //   停止页面的执行  
   
  Response.End();  
  }

C#导入Excel到DataSet(客户端无需安装Office)

static DataSet Parse(string fileName) { string connectionString = string.Format(...
  • soft2buy
  • soft2buy
  • 2014年11月18日 11:36
  • 1059

Excel文件与DataSet之间的转化的探索与实现

.net操作Excel的支持库下载   http://115.com/file/c2hkh144#NOPI.zip 以前用过依赖于office的方法对Excel文件进行操作,在自己机器上...
  • pukuimin1226
  • pukuimin1226
  • 2012年06月22日 18:09
  • 3848

【C#项目实战】将EXCEl表格导入DataSet

【前言】 还是做的抽奖系统里的, 将人名单导入到DataSet里去。 【正文】         单击导入按钮后 private void btnLook_Click(object send...
  • srk950606
  • srk950606
  • 2017年03月26日 20:24
  • 508

C#将excel数据导入dataset

//excel文件转换为DataSet类型结果 public DataSet xlsToDataSet(string filePath, string sheetName) ...
  • zzhywhp
  • zzhywhp
  • 2012年12月11日 11:27
  • 815

http://topic.csdn.net/t/20050406/11/3912976.html

给文件夹付权限 
  • xiaofeixia__9999
  • xiaofeixia__9999
  • 2008年01月18日 14:26
  • 485

怎么由DataSet将数据导入Excel?

        /**////         /// 将DataSet里所有数据导入Excel        /// 需要添加COM: Microsoft Excel Object Library ...
  • fangxinggood
  • fangxinggood
  • 2005年03月24日 19:43
  • 8157

C#从Excel文件中读取数据转换为DataSet

1. 打开文件获取到FilePath; 2. 读取Sheet名称TABLENAME; 3. 将数据Fill到DataSet中; public DataSet ExcelToDataSet(s...
  • davinciyxw
  • davinciyxw
  • 2012年08月13日 13:53
  • 2288

C# 读取Excel数据到DataSet

        ///         /// 读取Excel数据到DS         ///         /// xls文件路径(服务器物理路径)string RootDir =Se...
  • dannywj1371
  • dannywj1371
  • 2011年04月14日 20:00
  • 4591

C# NPOI导入与导出Excel

使用 NPOI 你就可以在没有安装 Office 或者相应环境的机器上对 WORD/EXCEL 文档进行读写。...
  • mangkata
  • mangkata
  • 2016年08月31日 17:28
  • 1149

C# NPOI读取Excel数据

NPOI方式 NPOI 是 POI 项目的 .NET 版本。POI是一个开源的Java读写Excel、WORD等微软OLE2组件文档的项目。使用 NPOI 你就可以在没有安装 Office 或...
  • luolei3344
  • luolei3344
  • 2018年01月12日 14:49
  • 109
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:dataset 导入 excel参考 http://topic.csdn.net/t/20050119/16/3738430.html
举报原因:
原因补充:

(最多只允许输入30个字)