跳至頁尾內容
USING IRONXL

如何在 C# 中載入 Excel 文件

要在C#中載入Excel檔案,使用IronXL程式庫的WorkBook.Load()方法,該方法接受檔案路徑、流或位元組陣列,然後程式化地存取工作表和讀取儲存格值,無需安裝Microsoft Office。

本文將演示如何使用IronXL(一個全面的Excel C#程式庫)高效程式化地載入Excel檔案。 無論您是在建立讀取Excel檔案的ASP.NET MVC應用程式,還是建立Windows Forms Excel讀取器,IronXL提供了一個簡單但功能強大的解決方案。

如何載入Excel檔案

  1. 打開Visual Studio並建立一個新的Visual Studio項目。
  2. 下載IronXL NuGet套件程式庫。
  3. 製作一個XLSX檔案格式或CSV檔案格式的Excel工作簿。
  4. 現在使用IronXL程式庫載入Excel檔案。
  5. 使用儲存格範圍處理Excel值。

什麼是IronXL,為什麼我要使用它?

什麼是IronXL?

IronXL這個C# .NET Excel程式庫,可以用來從Microsoft Excel文件中讀取資料並轉換成CSV文件。 使用IronXL不需要安裝Microsoft Office、Microsoft.Office.Interop.Excel或Excel互操作。 它是完全獨立的.NET Excel應用程式庫,可無縫運行於Docker容器,並可部署至AWS Lambda函式Azure雲服務。 它可以讀取許多電子表格格式。

由於IronXL直觀的C# API,.NET上下文中的Excel電子表格可以輕鬆生成、修改和查看。 IronXL完全支援核心.NET應用程式、Linux環境macOS系統、Azure和Xamarin。 此程式庫還可無縫整合至Blazor應用程式以閱讀Excel檔案.NET MAUI項目。 以下是使IronXL從其他Excel檔案閱讀應用程式中脫穎而出的主要功能的項目符號清單。

IronXL有哪些關鍵功能使其脫穎而出?

為什麼我應選擇IronXL而非其他Excel程式庫?

憑藉這些功能,IronXL成為一個靈活而強大的處理Excel檔案的程式庫,為開發人員在程式化管理Excel文件相關的任務時提供更多便利和靈活性。 此程式庫提供綜合API參考文件及廣泛的教程,幫助開發者快速入門。 如需更多有關IronXL程式庫的資訊,請參考這些文件

如何設置.NET專案以進行Excel檔案操作?

正如您將在接下來的部分中看到的那樣,IronXL程式庫讓寫入資料及建立和讀取Excel文件變得輕而易舉。 在我們開始之前,請確保您已正確配置授權金鑰,如果您使用完整版,也可以從免費試用版開始。 如果是Web應用程式,您可能需要在您的web.config文件中設置授權金鑰

首先,讓我們開始一個新的專案來處理Excel檔案:

如何在Visual Studio中建立新專案?

Visual Studio啟動後,從"檔案"選單中選擇"新專案"。

.NET"Console App"專案範本將出現在隨後的對話框中; 選擇它們並雙擊"下一步"。

Visual Studio 新專案

我應配置哪些專案設置?

在輸入新專案位置到"位置"區域後,您可以為該專案輸入任何所需的專案名稱。 在本教程中,考慮將其命名為描寫性的名稱如"ExcelReaderApp"或"IronXLDemo"。 按下下一步按鈕繼續。

Visual Studio新專案配置對話框顯示建立C# Console App的選項,專案名稱 專案配置

我應選擇哪個.NET Framework版本?

透過Framework下拉選單,您可以選擇.NET Framework。 這裡使用了長期支援的6.0版本.NET。 IronXL支援多個.NET版本,因此您可以根據專案需求進行選擇。 之後按下"建立"。

Visual Studio專案配置螢幕顯示控制台應用程式設置,其中.NET 6.0被高亮顯示為所選框架。 Do not use top-level statements複選框清晰可見且未選擇。 目標框架選擇

我如何安裝IronXL程式庫?

以下解決方案需要您獲得IronXL程式庫。 為了達成此目的,將以下命令輸入至包管理器控制台:

Install-Package IronXL.Excel

Visual Studio中的包管理器控制台窗口顯示成功安裝`Install-Package IronXL.Excel`命令,安裝過程和確認訊息已顯示。 IronXL 安裝

這一選擇的另一選擇是使用NuGet套件管理器來搜尋"IronXL"套件。

瀏覽應該會導出所有與IronXL相關的NuGet套件列表。 然後選擇所需的並點擊安裝按鈕。

Visual Studio中的NuGet套件管理器窗口突出顯示IronXL.Excel套件,其版本為2023.4.13。 NuGet包管理器

我如何使用IronXL閱讀Excel文件?

以下程式碼允許您使用IronXL載入和閱讀Excel文件。 此範例演示了無需互操作的Excel文件閱讀基礎方法

using IronXL;
using System.Linq;

// Load the workbook with the name "Demo.xlsx".
WorkBook workBook = WorkBook.Load("Demo.xlsx");

// Access the first worksheet in the workbook.
WorkSheet sheet = workBook.WorkSheets.First();

// Iterate through the range of cells A2 to B10 and print each cell's address and text content.
foreach (var cell in sheet["A2:B10"])
{
    Console.WriteLine("Cell {0} has value '{1}'", cell.AddressString, cell.Text);
}
using IronXL;
using System.Linq;

// Load the workbook with the name "Demo.xlsx".
WorkBook workBook = WorkBook.Load("Demo.xlsx");

// Access the first worksheet in the workbook.
WorkSheet sheet = workBook.WorkSheets.First();

// Iterate through the range of cells A2 to B10 and print each cell's address and text content.
foreach (var cell in sheet["A2:B10"])
{
    Console.WriteLine("Cell {0} has value '{1}'", cell.AddressString, cell.Text);
}
Imports IronXL
Imports System.Linq

' Load the workbook with the name "Demo.xlsx".
Private workBook As WorkBook = WorkBook.Load("Demo.xlsx")

' Access the first worksheet in the workbook.
Private sheet As WorkSheet = workBook.WorkSheets.First()

' Iterate through the range of cells A2 to B10 and print each cell's address and text content.
For Each cell In sheet("A2:B10")
	Console.WriteLine("Cell {0} has value '{1}'", cell.AddressString, cell.Text)
Next cell
$vbLabelText   $csharpLabel

程式碼的各部分是做什麼的?

程式碼的第一行using IronXL;被調用來將程式庫實現在此演示專案中,從而使IronXL功能可用。

然後使用Load方法載入名為"Demo.xlsx"的現有Excel文件,該方法可在WorkBook物件中使用。

Load方法接受三種型別的輸入:檔案名稱與路徑、流和位元組陣列。 在上述範例中,使用帶有路徑的檔案名稱的方法來載入文件。

我如何存取特定工作表和儲存格範圍?

要執行讀取Excel文件操作,我們使用First()方法從工作簿的工作表集合中選擇初始工作表,以取得預設的WorkSheet。 您還可以通過名稱或索引來管理工作表

隨後,使用工作表物件藉由指定儲存格範圍來選擇Excel工作表範圍。 選擇範圍的功能允許您操作特定儲存格、整行或列。 然後它將遍歷指定範圍(A2:B10)內的每一個儲存格值,並顯示值和儲存格地址。

我應預期此程式碼的哪些輸出?

Excel電子表格顯示樣本資料(客戶名稱、訂單日期、產品等),下方是一個C#控制台窗口,顯示IronXL程式碼正在讀取的儲存格引用和值。 先前程式碼範例的輸出

上述範例演示了在C#中載入Excel文件及其使用IronXL的結果輸出。 它通過引用行和列索引來使用Excel工作表。

我如何處理不同的Excel文件格式?

IronXL支援超越標準XLSX的各種Excel文件格式。 您可以讀取XLSX文件、處理較舊的XLS格式,甚至透過相同的API讀取CSV文件。 以下是載入不同檔案型別的範例:

// Load an XLSX file
WorkBook xlsxWorkbook = WorkBook.Load("data.xlsx");

// Load a CSV file
WorkBook csvWorkbook = WorkBook.LoadCSV("data.csv", delimiter: ",");

// Load an XLS file (older Excel format)
WorkBook xlsWorkbook = WorkBook.Load("legacy.xls");

// Load from a stream instead of a file path
using (FileStream stream = new FileStream("data.xlsx", FileMode.Open))
{
    WorkBook streamWorkbook = WorkBook.Load(stream);
}
// Load an XLSX file
WorkBook xlsxWorkbook = WorkBook.Load("data.xlsx");

// Load a CSV file
WorkBook csvWorkbook = WorkBook.LoadCSV("data.csv", delimiter: ",");

// Load an XLS file (older Excel format)
WorkBook xlsWorkbook = WorkBook.Load("legacy.xls");

// Load from a stream instead of a file path
using (FileStream stream = new FileStream("data.xlsx", FileMode.Open))
{
    WorkBook streamWorkbook = WorkBook.Load(stream);
}
' Load an XLSX file
Dim xlsxWorkbook As WorkBook = WorkBook.Load("data.xlsx")

' Load a CSV file
Dim csvWorkbook As WorkBook = WorkBook.LoadCSV("data.csv", delimiter:=",")

' Load an XLS file (older Excel format)
Dim xlsWorkbook As WorkBook = WorkBook.Load("legacy.xls")

' Load from a stream instead of a file path
Using stream As New FileStream("data.xlsx", FileMode.Open)
    Dim streamWorkbook As WorkBook = WorkBook.Load(stream)
End Using
$vbLabelText   $csharpLabel

如需更多IronXL編碼的資訊,請參考此範例

載入Excel文件後的下一步是什麼?

IronXL是一個受歡迎的Excel附加元件,無需任何額外的外部程式庫即可運作。 它有多種用途,不需要安裝Microsoft Excel。

涉及Microsoft Excel文件的所有程式化任務都可以完全用IronXL解決。 您可以新增和移除資料、搜尋和替換、合併和取消合併資料表或儲存格排序字串或數字可視化資料表,然後儲存文件。 使用IronXL可通過公式編輯功能來進行公式運算。 您還可以設置儲存格資料型別,並利用它檢查電子表格資料。 IronXL提供的讀寫CSV文件能力,對於處理Excel資料來說是必需的。

進階功能探險

一旦您掌握了Excel文件的載入功能,建議探索以下進階功能:

想試試看嗎?

IronXL提供免費試用,但使用者可以選擇升級為1年的付費會員資格以獲得更新和客戶支援。 IronXL對允許自由分發的安全性收取額外費用。 欲了解有關定價的具體細節,請參閱此授權頁面

常見問題

如何在不使用Interop的情況下用C#載入Excel檔案?

您可以通過利用IronXL程式庫在C#中載入Excel檔案,而不使用Interop。首先在您的專案中安裝IronXL的NuGet套件,然後使用WorkBook.Load方法程式化地載入您的Excel檔案。

在Visual Studio專案中設置IronXL的步驟是什麼?

要在Visual Studio專案中設置IronXL,建立一個新專案,通過NuGet套件管理器安裝IronXL的NuGet套件,然后您可以開始使用程式庫的API建立或載入Excel檔案。

IronXL可以與.NET Core 6一起使用嗎?

是的,IronXL與.NET Core 6完全相容。您可以將其無縫整合到您的.NET Core專案中以管理Excel檔案。

IronXL如何管理大型Excel資料集?

IronXL針對高效處理大型資料集而進行了優化。其多執行緒功能允許它迅速處理大量資料而不影響效能。

是否可以使用IronXL讀取和轉換Excel檔案?

是的,IronXL允許您從Excel檔案中讀取資料並將它們轉換為不同的格式,如CSV。可以通過其C# API程式化地完成。

IronXL支援哪種Excel檔案格式?

IronXL支援多種Excel檔案格式,包括XLSX、CSV、XLS、XLST、TSV和XLSM,適用於不同的專案需求。

IronXL可以在不同的操作系統上使用嗎?

是的,IronXL是跨平台的,可以在Windows、macOS和Linux上運行,允許開發者在不同的環境中使用此程式庫。

如何使用IronXL處理Excel中的不同資料型別?

IronXL可以管理Excel列中的各種資料型別,如文字、數字、日期和公式,提供了一個靈活的資料操作解決方案。

在C#中使用IronXL進行Excel任務的優點是什麼?

IronXL具有多項優點,包括易於使用、與多個平台相容、支援廣泛的Excel格式,而且不依賴於Microsoft Excel的安裝。

如何試用IronXL進行Excel檔案管理?

您可以使用免費試用版來試用IronXL。若要存取額外功能、更新和客戶支援,請考慮升級到付費會員。

Curtis Chau
技術作家

Curtis Chau擁有Carleton大學的電腦科學學士學位,專精於前端開發,擁有Node.js、TypeScript、JavaScript和React的專業知識。Curtis熱衷於建立直觀且美觀的使用者介面,喜愛使用現代框架並建立結構良好、視覺吸引力的手冊。

除了開發,Curtis對物聯網(IoT)有濃厚的興趣,探索創新的方法來整合硬體和軟體。在空閒時間,他喜歡玩遊戲和建立Discord機器人,結合他對技術的熱愛與創造力。

Iron 支援團隊

我們線上24小時,每週5天。
聊天
電子郵件
給我打電話