使用IRONXL

如何在 C# 中將 Excel 轉換為 Datatable

已更新 2024年3月31日
分享:

這篇博客展示了如何實現 Excel 到 DataTable 的轉換。 使用 IronXL,可以輕鬆完成此任務,該工具提供了一種簡單且高效的方法來讀取和寫入 C# 中的 Excel 文件。

1. IronXL

IronXL 是一個功能強大且使用者友好的 C# 函式庫,旨在簡化 Excel 工作表的讀取、寫入、匯出數據和操作。 它為開發人員提供了一種無縫的方式來處理 Excel 試算表,並在其 C# 中自動化任務。

使用IronXL,您可以輕鬆地匯入, 匯出,並修改 Excel 活頁簿、工作表和儲存格中的數據。 它支援舊版的 XLS 格式和新版的 XLSX 格式,使其與多種版本的 Excel 相容。

該庫提供了一個簡單的API,使開發人員能夠對Excel文件執行各種操作,比如c建立新的工作簿將資料讀寫至儲存格,應用格式化處理公式,甚至提取圖表和圖片. IronXL 還支持處理像表格、範圍和命名範圍這樣的複雜數據結構。

2. 必要條件

要使用IronXL在C#中處理Excel文件並將其轉換為DataTable,需具備一些先決條件:

  1. 開發環境: 確保您的機器上設置了一個兼容的開發環境,例如 Visual Studio 或任何其他 C# 集成開發環境 (集成開發環境)。

  2. IronXL Library: 下載並安裝 IronXL 庫。 您可以從官方的 IronXL 網站或透過 Visual Studio 的 NuGet 套件管理器獲取該程式庫。 在您的 C# 專案中包含 IronXL 命名空間以存取其類別和方法。

  3. .NET Framework 或 .NET Core:IronXL 支援 .NET Framework 和 .NET Core。 根據您的項目需求,確保在您的機器上安裝適當的版本。

3. 在C#中創建一個新專案

要使用 IronXL 庫進行與 Excel 相關的任務,第一步是在 Visual Studio 中創建一個 .NET 專案。 雖然可以使用任何版本的 Visual Studio,但建議使用最新版本。

本教程將使用主控台應用程式專案範本來展示如何使用IronXL。

如何在C#中將Excel轉換為DataTable,圖1:新專案

新專案

選擇專案類型後,請繼續指定專案的名稱和位置。 此外,您可以選擇專案的首選框架,例如 .NET Core 6。

如何在 C# 中將 Excel 轉換為 DataTable,圖 2:專案配置

專案配置

在生成解決方案後,您可以訪問 Program.cs 文件,在那裡您可以輸入代碼並創建/執行應用程序。

如何在C#中將Excel轉換為DataTable,圖3:Program.cs

Program.cs

4. 安裝 IronXL

IronXL 庫可以通過不同的方式下載和安裝。 這些是:

  • 使用 Visual Studio NuGet 套件
  • 使用 Visual Studio 命令列

4.1 使用 Visual Studio NuGet 套件

要在 Visual Studio 中使用 NuGet 套件管理器安裝 IronXL 庫,請打開 NuGet 套件管理器,並在「瀏覽」選項卡中搜尋 IronXL。

一旦在搜索結果中找到IronXL,選擇它並繼續進行安裝。 安裝完成後,您可以在項目中使用IronXL庫。

下方截圖顯示如何在 Visual Studio 中打開 NuGet 套件管理器。

如何在 C# 中將 Excel 轉換為 DataTable,圖 4:NuGet 套件管理器

NuGet 套件管理員

IronXL 在搜尋結果中:

如何在 C# 中將 Excel 轉換為 DataTable,圖 5:IronXL

IronXL

4.2 使用 Visual Studio 命令行

許多開發人員更喜歡使用命令行介面安裝套件。 若要使用命令列安裝IronXL,請按照以下步驟進行:

  • 在 Visual Studio 中,前往 工具 > NuGet 套件管理員 > 套件管理員主控台
  • 在封裝管理員主控台標籤中輸入以下行:
Install-Package IronXL.Excel

現在套件將下載/安裝到當前專案並準備使用。

如何在 C# 中将 Excel 转换为 DataTable,圖 6:安裝 IronXL 套件

安裝 IronXL 套件

5. 使用 IronXL 將 Excel 數據轉換為 DataTable

使用IronXL這個Excel庫,可以輕鬆地在C#中將Excel檔案流中的Excel數據匯出到DataTable。 本節將討論如何使用IronXL將Excel工作表數據轉換為DataTable

首先,需要一個 Excel 文件將其第一個工作表數據轉換為 DataTable。 為此目的,應創建一個範例 Excel 文件。

如何在 C# 中將 Excel 轉換為 DataTable,圖 7: 範例 Excel

範例 Excel

現在我們來看看代碼範例。

using IronXL;
using System;
using System.Data;
//Workbook object
WorkBook workBook = WorkBook.Load("sample.xlsx");

WorkSheet workSheet = workBook.DefaultWorkSheet;
//var dt
DataTable dataTable = workSheet.ToDataTable(true);

foreach (DataRow row in dataTable.Rows)
{
    for (int i = 0; i < dataTable.Columns.Count; i++)
    {
        Console.Write(row [i]);
    }
    Console.WriteLine();
}
using IronXL;
using System;
using System.Data;
//Workbook object
WorkBook workBook = WorkBook.Load("sample.xlsx");

WorkSheet workSheet = workBook.DefaultWorkSheet;
//var dt
DataTable dataTable = workSheet.ToDataTable(true);

foreach (DataRow row in dataTable.Rows)
{
    for (int i = 0; i < dataTable.Columns.Count; i++)
    {
        Console.Write(row [i]);
    }
    Console.WriteLine();
}
Imports IronXL
Imports System
Imports System.Data
'Workbook object
Private workBook As WorkBook = WorkBook.Load("sample.xlsx")

Private workSheet As WorkSheet = workBook.DefaultWorkSheet
'var dt
Private dataTable As DataTable = workSheet.ToDataTable(True)

For Each row As DataRow In dataTable.Rows
	For i As Integer = 0 To dataTable.Columns.Count - 1
		Console.Write(row (i))
	Next i
	Console.WriteLine()
Next row
VB   C#

在上面的代碼中,將 Excel 文件加載為Workbook物件使用WorkBook.Load由 IronXL 提供的方法,然後將其第一個工作表數據保存為工作表. 要將此 WorkSheet 轉換為 DataTable,使用 workSheet.ToDataTable 方法調用 WorkSheet 變量,然後將數據導出到 DataTable 並存儲到新的 DataTable 變量中。

最後,在控制台中列印 DataTable 數據進行視覺化。

如何在C#中將Excel轉換為DataTable,圖8:將數據導出到DataTable輸出

匯出資料至 DataTable 輸出

6. 結論

在 C# 中使用 DataTable 為在應用程式中操作 Excel 數據提供了一個強大且高效的解決方案。 透過利用像 IronXL 這樣的函式庫,開發人員可以輕鬆地將 Excel 數據轉換為 DataTable,並充分發揮 C# 的潛力。

本教程探討了IronXL的功能及其與C#的無縫整合。 我們討論了處理 Excel 文件的先決條件,例如擁有兼容的開發環境、安裝 IronXL 庫以及確保適當的 .NET Framework 或 .NET Core 版本。

我們還逐步介紹了在 Visual Studio 中創建新的 C# 項目並通過 NuGet Package Manager 或者 Visual Studio 命令行安裝 IronXL 的過程。成功將 IronXL 集成到項目中後,我們示範了如何使用該庫簡單易用的 API 將數據導出到 DataTable。

通過載入 Excel 文件、訪問所需的工作表並利用ToDataTable透過IronXL提供的方法,我們能夠提取數據並將其存儲在DataTable中。 最後,我們展示了如何通過在控制台中列印 DataTable 的內容來進行可視化。

使用IronXL和 C# 中的 DataTable,開發人員可以構建健壯的應用程式,以無縫互動的方式處理 Excel 資料,實現高效的資料處理、分析和視覺化。 透過本教程獲得的知識,您現在可以自信地將 Excel 工作表整合到您的 C# 專案中,並利用 DataTable 提供的豐富功能。 如需更多有關 IronXL 的教程,請訪問教程頁面. 如果您需要有關 Excel C# 的詳細教程。

< 上一頁
如何在 Blazor 中匯出為 CSV
下一個 >
如何在 .NET 6 中匯出檔案至 Excel

準備開始了嗎? 版本: 2024.11 剛剛發布

免費 NuGet 下載 總下載次數: 1,111,773 查看許可證 >