使用C#實現(xiàn)DataSet與Excel的互相轉換
在日常開發(fā)中,DataSet 是 .NET 程序中常用的數(shù)據(jù)容器,而 Excel 文件 則是數(shù)據(jù)交換和報表的常見格式。
在實際業(yè)務中,經常需要將數(shù)據(jù)庫查詢結果保存到 Excel 文件,或者將 Excel 文件中的數(shù)據(jù)導入到 DataSet 以便進一步處理。
本文將介紹如何使用 C# 和 Free Spire.XLS for .NET 來完成以下任務:
- 將 DataSet 導出為 Excel 文件;
- 從 Excel 文件導入數(shù)據(jù)到 DataSet。
準備工作
在項目中引入 Excel 操作庫,可以下載 Free Spire.XLS for .NET,或通過 NuGet 安裝:
Install-Package FreeSpire.XLS
Step 1: DataSet 導出到 Excel
假設我們有一個 DataSet,其中包含員工信息數(shù)據(jù)表。
下面的代碼演示了如何將 DataSet 保存為 Excel 文件。
操作說明:
- 創(chuàng)建一個 DataSet 并添加 DataTable;
- 使用
Workbook和Worksheet創(chuàng)建 Excel; - 調用
InsertDataTable()方法將 DataTable 寫入工作表; - 保存 Excel 文件。
代碼示例:
using System;
using System.Data;
using Spire.Xls;
class Program
{
static void Main()
{
// Step 1: 創(chuàng)建DataSet和DataTable
DataSet ds = new DataSet();
DataTable dt = new DataTable("Employees");
dt.Columns.Add("ID", typeof(int));
dt.Columns.Add("Name", typeof(string));
dt.Columns.Add("Department", typeof(string));
dt.Rows.Add(1, "Tom", "HR");
dt.Rows.Add(2, "Lucy", "IT");
dt.Rows.Add(3, "David", "Finance");
ds.Tables.Add(dt);
// Step 2: 創(chuàng)建Workbook
Workbook workbook = new Workbook();
Worksheet sheet = workbook.Worksheets[0];
// Step 3: 導出DataTable到Excel
sheet.InsertDataTable(dt, true, 1, 1);
// Step 4: 保存Excel
workbook.SaveToFile("Export.xlsx", ExcelVersion.Version2016);
}
}執(zhí)行后,將得到一個包含員工信息的 Excel 文件。

Step 2: 從 Excel 導入到 DataSet
除了導出,我們也可以將 Excel 中的數(shù)據(jù)讀取到 DataSet 中。
操作說明:
- 加載 Excel 文件;
- 通過
ExportDataTable()方法將工作表內容導入為 DataTable; - 將 DataTable 添加到 DataSet。
代碼示例:
using System;
using System.Data;
using Spire.Xls;
class Program
{
static void Main()
{
// Step 1: 加載Excel文件
Workbook workbook = new Workbook();
workbook.LoadFromFile("Export.xlsx");
Worksheet sheet = workbook.Worksheets[0];
// Step 2: 導入Excel為DataTable
DataTable dt = sheet.ExportDataTable(sheet.AllocatedRange, true);
// Step 3: 添加到DataSet
DataSet ds = new DataSet();
ds.Tables.Add(dt);
// 驗證輸出
foreach (DataRow row in dt.Rows)
{
Console.WriteLine($"{row["ID"]}, {row["Name"]}, {row["Department"]}");
}
}
}運行結果將打印出 Excel 中的員工信息。

總結
通過本文的示例,我們學習了如何在 C# 中實現(xiàn) DataSet 與 Excel 的雙向轉換,包括:
- 導出 DataSet 到 Excel:用于報表生成或數(shù)據(jù)共享;
- 從 Excel 導入到 DataSet:便于數(shù)據(jù)分析和后續(xù)處理。
這種方式非常適合 數(shù)據(jù)交換、報表導出、Excel 批量導入數(shù)據(jù)庫 等場景。
到此這篇關于使用C#實現(xiàn)DataSet與Excel的互相轉換的文章就介紹到這了,更多相關C# DataSet與Excel互轉內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
C# 中 System.Index 結構體和 Hat 運算符(^)的使用示例
這篇文章主要介紹了C# 中 System.Index 結構體和 Hat 運算符(^)的使用示例,幫助大家更好的理解和使用C#,感興趣的朋友可以了解下2020-09-09
深入C#中使用SqlDbType.Xml類型參數(shù)的使用詳解
本篇文章是對在C#中使用SqlDbType.Xml類型參數(shù)的使用進行了詳細的分析介紹,需要的朋友參考下2013-05-05

