C#操作Excel导入导出
前些日子,有很多朋友說需要C#導出到Excel的代碼,現共享給大家
/// <summary>
??/// 讀取Excel文檔
??/// </summary>
??/// <param name="Path">文件名稱</param>
??/// <returns>返回一個數據集</returns>
??public DataSet ExcelToDS(string Path)
??{
???string strConn = "Provider=Microsoft.Jet.OLEDB.4.0;" +"Data Source="+ Path +";"+"Extended Properties=Excel 8.0;";
???OleDbConnection conn = new OleDbConnection(strConn);
???conn.Open();?
???string strExcel = "";??
???OleDbDataAdapter myCommand = null;
???DataSet ds = null;
???strExcel="select * from [sheet1$]";
???myCommand = new OleDbDataAdapter(strExcel, strConn);
???ds = new DataSet();
???myCommand.Fill(ds,"table1");??
???return ds;
??}
/// <summary>
??/// 寫入Excel文檔
??/// </summary>
??/// <param name="Path">文件名稱</param>
??public bool SaveFP2toExcel(string Path)
??{
???try
???{
????string strConn = "Provider=Microsoft.Jet.OLEDB.4.0;" +"Data Source="+ Path +";"+"Extended Properties=Excel 8.0;";
????OleDbConnection conn = new OleDbConnection(strConn);
????conn.Open();?
????System.Data.OleDb.OleDbCommand cmd=new OleDbCommand ();
????cmd.Connection =conn;
????//cmd.CommandText ="UPDATE [sheet1$] SET 姓名='2005-01-01' WHERE 工號='日期'";
????//cmd.ExecuteNonQuery ();
????for(int i=0;i<fp2.Sheets [0].RowCount -1;i++)
????{
?????if(fp2.Sheets [0].Cells[i,0].Text!="")
?????{
??????cmd.CommandText ="INSERT INTO [sheet1$] (工號,姓名,部門,職務,日期,時間) VALUES('"+fp2.Sheets [0].Cells[i,0].Text+ "','"+
???????fp2.Sheets [0].Cells[i,1].Text+"','"+fp2.Sheets [0].Cells[i,2].Text+"','"+fp2.Sheets [0].Cells[i,3].Text+
???????"','"+fp2.Sheets [0].Cells[i,4].Text+"','"+fp2.Sheets [0].Cells[i,5].Text+"')";
??????cmd.ExecuteNonQuery ();
?????}
????}
????conn.Close ();
????return true;
???}
???catch(System.Data.OleDb.OleDbException ex)
???{
????System.Diagnostics.Debug.WriteLine ("寫入Excel發生錯誤:"+ex.Message );
???}
???return false;
??}
總結
以上是生活随笔為你收集整理的C#操作Excel导入导出的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 求一个40岁微信网名
- 下一篇: 生成静态文件的新闻系统核心代码