如何在 C# 中讀取 Excel 文件
這篇文章將討論如何在C#中使用IronXL讀取Excel資料,這是一個輕量且快速的程式庫,是與Excel文件互動中最常用的C#程式庫之一。
1. IronXL
IronXL是一個C#程式庫,允許開發者輕鬆讀取、寫入和操作Excel文件,無需安裝Microsoft Excel。它是處理Excel資料或在C#中讀取Excel文件的強大工具,並提供了一個簡單易用的API來讀取和寫入Excel文件。
1.1. IronXL 特性
IronXL是一個C# Excel程式庫,提供了廣泛的功能或Excel功能,用於處理Excel資料,包括:
載入、寫入和讀取Excel文件
IronXL可以讀取、寫入和操作多種格式的Excel文件,包括XLS、XLSX、CSV和XML。 它還支持讀取受密碼保護的Excel文件和其他高級操作。
建立圖表
IronXL提供支持處理Excel圖表,允許開發者在Excel文件中建立和操作圖表。
存檔和匯出
IronXL提供支持,以不同格式存檔和匯出Excel文件。
支持多種格式
IronXL支持各種文件格式,如XLS、XLSX、CSV和XML。
處理公式
IronXL提供支持處理Excel公式,允許開發者在Excel文件內計算公式。
儲格樣式和更多
IronXL提供支持處理Excel儲格樣式,允許開發者專業地格式化Excel文件。
2. 建立C# 項目
本教程將使用C#程式語言和Visual Studio 2019建立一個項目。
- 立即啟動Visual Studio。
- 要開始一個新項目,點擊"建立"。 選擇C#系統控制台應用程式格式範本後,點擊下一步按鈕。
在Visual Studio中建立C#系統控制台應用程式
- 新窗口將會顯示,輸入項目名稱,然後點擊下一步。
為新的C#系統控制台應用程式選擇一個名稱
- 在下一個窗口中,選擇由您的項目最佳支持的C# .NET Framework。
為獲得最佳效果,選擇您C#系統控制台項目的最新可用版本的.NET Framework
現有的C#項目也可以使用。 只需打開項目並新增程式庫即可。 以下部分將顯示如何安裝Excel程式庫IronXL。
3. 安裝IronXL Excel程式庫
有兩種下載和安裝IronXL程式庫的方法:
- NuGet套件管理控制台
- NuGet套件管理器
3.1 NuGet套件管理控制台
- 瀏覽到套件管理控制台以管理NuGet套件。 它通常在Visual Studio的底部。

通過導航到工具 > NuGet套件管理器**進入套件管理器控制台
-
在控制台中,輸入以下命令並按Enter。
Install-Package IronXL.Excel
IronXL的NuGet套件將開始安裝並在一兩分鐘後可用。
3.2. 使用NuGet套件管理器安裝
IronXL程式庫可以直接使用NuGet套件管理器UI安裝。 要安裝IronXL,請按照以下步驟:
- 將滑鼠懸停在工具選單欄中的NuGet套件管理器上。
通過導航到工具 > NuGet套件管理器 > 管理解決方案包...
- 下拉選單將再次出現。 懸停在NuGet套件管理器上並點擊管理NuGet包以解決方案。
從NuGet套件管理器子選單中,點擊管理解決方案的NuGet包以存取NuGet套件管理器
- 選擇
IronXL.Excel包後,點擊安裝按鈕。 它將自動安裝程式庫。
4. 讀取Excel文件
IronXL提供能力以程式方式讀取Excel工作表,而無需任何軟體。 只需建立一個C# .NET項目,並只需幾行程式碼,您就可以在控制台中讀取Excel文件。
4.1. 讀取XLSX文件
使用IronXL在C#中讀取XLSX文件相當容易。 下面的例子將討論如何使用C#讀取Microsoft Excel工作簿是小菜一碟。
這是包含範圍從A1到D5資料的XLSX文件的範例,用於下面的例子。
將在此範例中使用的Excel文件
using IronXL;
using System;
using System.Linq;
// Load the workbook from a file
WorkBook workBook = WorkBook.Load("test.xlsx");
// Access the first worksheet in the workbook
WorkSheet workSheet = workBook.WorkSheets[0];
// Print the content of the worksheet to the console
Console.Write(workSheet);
using IronXL;
using System;
using System.Linq;
// Load the workbook from a file
WorkBook workBook = WorkBook.Load("test.xlsx");
// Access the first worksheet in the workbook
WorkSheet workSheet = workBook.WorkSheets[0];
// Print the content of the worksheet to the console
Console.Write(workSheet);
Imports IronXL
Imports System
Imports System.Linq
' Load the workbook from a file
Private workBook As WorkBook = WorkBook.Load("test.xlsx")
' Access the first worksheet in the workbook
Private workSheet As WorkSheet = workBook.WorkSheets(0)
' Print the content of the worksheet to the console
Console.Write(workSheet)
由上述程式碼範例建立的輸出
4.2. 讀取多個Excel文件
使用IronXL,您可以同時讀取多個Excel工作簿。在下面的源程式碼中,讀取了多個Excel文件。
using IronXL;
using System;
using System.Linq;
// Load the first workbook and access its first worksheet
WorkBook workBook = WorkBook.Load("test.xlsx");
WorkSheet workSheet = workBook.WorkSheets[0];
Console.WriteLine(workSheet);
Console.WriteLine();
// Load the second workbook (CSV format) and access its first worksheet
WorkBook workBook2 = WorkBook.Load("Example2.Sheet0.csv");
WorkSheet workSheet2 = workBook2.WorkSheets[0];
Console.WriteLine(workSheet2);
Console.WriteLine();
using IronXL;
using System;
using System.Linq;
// Load the first workbook and access its first worksheet
WorkBook workBook = WorkBook.Load("test.xlsx");
WorkSheet workSheet = workBook.WorkSheets[0];
Console.WriteLine(workSheet);
Console.WriteLine();
// Load the second workbook (CSV format) and access its first worksheet
WorkBook workBook2 = WorkBook.Load("Example2.Sheet0.csv");
WorkSheet workSheet2 = workBook2.WorkSheets[0];
Console.WriteLine(workSheet2);
Console.WriteLine();
Imports IronXL
Imports System
Imports System.Linq
' Load the first workbook and access its first worksheet
Private workBook As WorkBook = WorkBook.Load("test.xlsx")
Private workSheet As WorkSheet = workBook.WorkSheets(0)
Console.WriteLine(workSheet)
Console.WriteLine()
' Load the second workbook (CSV format) and access its first worksheet
Dim workBook2 As WorkBook = WorkBook.Load("Example2.Sheet0.csv")
Dim workSheet2 As WorkSheet = workBook2.WorkSheets(0)
Console.WriteLine(workSheet2)
Console.WriteLine()
輸出版一個Excel文件中的內容
4.3. 在單個Excel文件中讀取多個工作表
IronXL提供另一項突破性的功能,允許在單個C# .NET程式中讀取多個工作表。 您可以使用此功能進行並列比較。 下面的例子將讀取多個Excel工作表。
using IronXL;
using System;
// Load the workbook that contains multiple sheets
WorkBook workBook = WorkBook.Load("multiple.xlsx");
// Access the first worksheet
WorkSheet workSheet = workBook.WorkSheets[0];
Console.WriteLine(workSheet);
Console.WriteLine();
// Access the second worksheet
WorkSheet workSheet1 = workBook.WorkSheets[1];
Console.WriteLine(workSheet1);
Console.WriteLine();
using IronXL;
using System;
// Load the workbook that contains multiple sheets
WorkBook workBook = WorkBook.Load("multiple.xlsx");
// Access the first worksheet
WorkSheet workSheet = workBook.WorkSheets[0];
Console.WriteLine(workSheet);
Console.WriteLine();
// Access the second worksheet
WorkSheet workSheet1 = workBook.WorkSheets[1];
Console.WriteLine(workSheet1);
Console.WriteLine();
Imports IronXL
Imports System
' Load the workbook that contains multiple sheets
Private workBook As WorkBook = WorkBook.Load("multiple.xlsx")
' Access the first worksheet
Private workSheet As WorkSheet = workBook.WorkSheets(0)
Console.WriteLine(workSheet)
Console.WriteLine()
' Access the second worksheet
Dim workSheet1 As WorkSheet = workBook.WorkSheets(1)
Console.WriteLine(workSheet1)
Console.WriteLine()
輸出版一個Excel文件中的多個工作表的內容
5. 結論
對於編程新手來說,在C#中讀取Excel文件可能是一項困難的任務。 然而,通過使用像IronXL這樣的程式庫,這個過程變得更加簡單和易於管理。
IronXL是一個強大的C# Excel程式庫,提供了廣泛的功能,用於同時處理多個Excel文件或多個工作表。
有關如何使用IronXL讀取Excel文件的更多資訊,請存取讀取Excel電子表格程式碼範例。
IronXL可免費用於開發目的,但需要商業使用授權。 查看在C#教程中閱讀Excel文件以獲取更多程式碼範例和逐步指南,了解如何建立和讀取Excel文件。
常見問題
如何在不使用 Interop 的情況下,以 C# 讀取 Excel 文件?
您可以使用 IronXL 以 C# 讀取 Excel 文件,而不需要安裝 Microsoft Excel。IronXL 提供了一個簡單的 API 來與 Excel 文件互動,支持多種格式如 XLS、XLSX、CSV 和 XML。
using IronXL 操作 C# 中 Excel 文件的優勢有哪些?
IronXL 提供了許多優勢,包括能夠讀寫多種格式的 Excel 文件、支持密碼保護文件、建立圖表、處理公式和設置單元格樣式,所有這些都不需要在您的機器上安裝 Microsoft Excel。
如何在C#專案中安裝IronXL?
通過使用 NuGet 套件管理器控制台中命令 Install-Package IronXL.Excel 或在 Visual Studio 的 NuGet 套件管理器 UI 中安裝 IronXL 到您的 C# 專案。
我可以使用 IronXL 一次處理多個 Excel 文件嗎?
是的,IronXL 允許您同時讀取和處理多個 Excel 文件。每個文件可以通過 WorkBook 和 WorkSheet 類單獨載入。
如何在 C# 中讀取 Excel 文件中的多個工作表?
using IronXL,您可以使用 WorkBook.Load 方法從單個 Excel 文件中讀取多個工作表,然後使用 WorkSheet 類存取每個工作表。
IronXL 是否可以免費用於開發?
IronXL 可免費用於開發用途,但生產或商業用途則需付費授權。
如何使用 IronXL 讀取 C# 中的 XLSX 文件?
要使用 IronXL 讀取 XLSX 文件,請使用 WorkBook.Load("file.xlsx") 載入文件,然後使用 WorkSheet 類存取所需的特定工作表以讀取其資料。
IronXL 是否支持讀取帶公式的 Excel 文件?
是的,IronXL 支持讀取包含公式的 Excel 文件,允許您程式化地與公式互動並進行操作。
我可以使用 IronXL 處理哪些文件格式?
IronXL 支持多種文件格式,包括 XLS、XLSX、CSV 和 XML,使其在不同的 Excel 文件操作中非常靈活。




