日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > C# >内容正文

C#

C#编程学习49:将数据写入到excel中

發布時間:2023/12/14 C# 37 豆豆
生活随笔 收集整理的這篇文章主要介紹了 C#编程学习49:将数据写入到excel中 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

本文為

C#編程學習27: C#操作Excel從入門到精通_m1m2m3mmm的博客-CSDN博客

中單獨提煉出的新建Excel文件并導出數據的專門總結;更全面的總結可以上一篇。


1 添加引用及名稱空間

添加引用

?

添加名稱空間

//用到的名空間 using Excel = Microsoft.Office.Interop.Excel; using System.Runtime.InteropServices;//導入dll

2 實現代碼及邏輯

2.1 代碼框架

這段代碼主要干了以下幾個事情:

  • 創建excel應用,關閉excel;
  • 在excel中創建workbook,對于本身不存在需要程序新創建的excel文件,不能使用myApp.Workbooks.Open(str)方法,否則會報?HRESULT:0x800A03EC異常
  • 并在workbook中添加worksheets
  • 將worksheets另存為指定目錄
  • 關閉workbook
//打開實驗數據 string str = @"E:\C#\Example200\LearnExcel\LearnExcel\data.xlsx"; Excel.Workbook wb = myApp.Workbooks.Add(true); Excel.WorkShee ws = myApp.WorkSheets.Add();//....ws.SaveAs(str); //關閉數據表 wb.Close();myApp.Quit(); myApp = null; System.Runtime.InteropServices.Marshal.ReleaseComObject(myApp);

2.2 創建數據表

一般我們匯報數據保存在DataTable對象中,這一部分我們介紹DataTable使用的一些基本知識。

  • 創建DataTable對象并生成列頭
DataTable dt = new DataTable();//添加表頭dt.Columns.Add("姓名");dt.Columns.Add("年齡");dt.Columns.Add("性別");
  • 創建新行并將其添加到DataTable對象中
DataRow dr = dt.NewRow(); dr["姓名"] = "張三"; dr["年齡"] = "18"; dr["性別"] = "女"; dt.Rows.Add(dr);

2.3 將DataTable對象寫入到worksheets中

  • 在第一行寫表頭文字
ws.Cells[1,1] = "姓名"; ws.Cells[1,2] = "年齡"; ws.Cells[1,3] = "性別";
  • 將dt對象的數據寫入excel,注意在Excel中,行和列的編號是從1開始的
int rowIndex = 2;foreach (DataRow row in dt.Rows){for (int colIndex = 0; colIndex < dt.Columns.Count; colIndex++){ws.Cells[rowIndex, colIndex + 1] = row[colIndex].ToString();}rowIndex++;}

3 完整代碼

//打開實驗數據 string str = @"E:\C#\Example200\LearnExcel\LearnExcel\data.xlsx"; Excel.Workbook wb = myApp.Workbooks.Add(true); Excel.WorkShee ws = myApp.WorkSheets.Add();DataTable dt = new DataTable(); //添加表頭 dt.Columns.Add("姓名"); dt.Columns.Add("年齡"); dt.Columns.Add("性別"); // 添加一行數據 DataRow dr = dt.NewRow(); dr["姓名"] = "張三"; dr["年齡"] = "18"; dr["性別"] = "女"; dt.Rows.Add(dr);// 往表格中寫入第一行數據,即表頭 ws.Cells[1,1] = "姓名"; ws.Cells[1,2] = "年齡"; ws.Cells[1,3] = "性別";// 往表格中寫入數據行 int rowIndex = 2; foreach (DataRow row in dt.Rows) {for (int colIndex = 0; colIndex < dt.Columns.Count; colIndex++){ws.Cells[rowIndex, colIndex + 1] = row[colIndex].ToString();}rowIndex++; }ws.SaveAs(str); //關閉數據表 wb.Close();myApp.Quit(); myApp = null; System.Runtime.InteropServices.Marshal.ReleaseComObject(myApp);

總結

以上是生活随笔為你收集整理的C#编程学习49:将数据写入到excel中的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。