如何在 C# 中載入 Excel 文件
要在C#中載入Excel檔案,使用IronXL程式庫的WorkBook.Load()方法,該方法接受檔案路徑、流或位元組陣列,然後程式化地存取工作表和讀取儲存格值,無需安裝Microsoft Office。
本文將演示如何使用IronXL(一個全面的Excel C#程式庫)高效程式化地載入Excel檔案。 無論您是在建立讀取Excel檔案的ASP.NET MVC應用程式,還是建立Windows Forms Excel讀取器,IronXL提供了一個簡單但功能強大的解決方案。
如何載入Excel檔案
- 打開Visual Studio並建立一個新的Visual Studio項目。
- 下載IronXL NuGet套件程式庫。
- 製作一個XLSX檔案格式或CSV檔案格式的Excel工作簿。
- 現在使用IronXL程式庫載入Excel檔案。
- 使用儲存格範圍處理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是一個強大的C# Excel電子表格程式庫; 它相容.NET Core和.NET Framework,是Excel互操作的絕佳替代方案。
- IronXL支援Web應用程式、Windows Forms、控制台和幾乎所有其他.NET Framework,包括能夠處理VB.NET Excel文件。
- IronXL相容的操作系統包括Windows、macOS和Linux。
- 使用IronXL,無論您是載入現有電子表格還是建立新電子表格,存取Excel文件快速而簡單。
- IronXL可讀取大量Excel文件型別,包括XLSX、CSV、XLS、XLST、TSV、XLSM等。 您甚至可以在不同電子表格格式之間轉換。
- 在我們的眾多可能性中包括导入、更新和数据表和数据集的导出功能。
- IronXL允許您從多個來源(包括資料庫、資料表、陣列和集合)將資訊導入至Excel檔案。 您可以從SQL資料庫載入Excel資料及從Excel更新資料庫記錄。 然後可使用例如Excel轉換至HTML或DataTable轉換至CSV的方法,將資料從Excel導出為CSV、HTML、PDF和其他格式。
- IronXL可以為Excel電子表格生成計算,支援數學函式及複雜的Excel公式。
- 文字、整數、日期、貨幣、公式和百分比只是IronXL可以處理的Excel列的數個資料型別。 您可以程式化地設置儲存格資料格式並應用Excel數字格式。
- 大型Excel檔案的性能已優化,具有增強的多執行緒功能來有效處理資料。 此程式庫遵循安全最佳實踐,並有效處理文件大小限制。
為什麼我應選擇IronXL而非其他Excel程式庫?
憑藉這些功能,IronXL成為一個靈活而強大的處理Excel檔案的程式庫,為開發人員在程式化管理Excel文件相關的任務時提供更多便利和靈活性。 此程式庫提供綜合API參考文件及廣泛的教程,幫助開發者快速入門。 如需更多有關IronXL程式庫的資訊,請參考這些文件。
如何設置.NET專案以進行Excel檔案操作?
正如您將在接下來的部分中看到的那樣,IronXL程式庫讓寫入資料及建立和讀取Excel文件變得輕而易舉。 在我們開始之前,請確保您已正確配置授權金鑰,如果您使用完整版,也可以從免費試用版開始。 如果是Web應用程式,您可能需要在您的web.config文件中設置授權金鑰。
首先,讓我們開始一個新的專案來處理Excel檔案:
如何在Visual Studio中建立新專案?
Visual Studio啟動後,從"檔案"選單中選擇"新專案"。
.NET"Console App"專案範本將出現在隨後的對話框中; 選擇它們並雙擊"下一步"。
新專案
我應配置哪些專案設置?
在輸入新專案位置到"位置"區域後,您可以為該專案輸入任何所需的專案名稱。 在本教程中,考慮將其命名為描寫性的名稱如"ExcelReaderApp"或"IronXLDemo"。 按下下一步按鈕繼續。
專案配置
我應選擇哪個.NET Framework版本?
透過Framework下拉選單,您可以選擇.NET Framework。 這裡使用了長期支援的6.0版本.NET。 IronXL支援多個.NET版本,因此您可以根據專案需求進行選擇。 之後按下"建立"。
目標框架選擇
我如何安裝IronXL程式庫?
以下解決方案需要您獲得IronXL程式庫。 為了達成此目的,將以下命令輸入至包管理器控制台:
Install-Package IronXL.Excel
IronXL 安裝
這一選擇的另一選擇是使用NuGet套件管理器來搜尋"IronXL"套件。
瀏覽應該會導出所有與IronXL相關的NuGet套件列表。 然後選擇所需的並點擊安裝按鈕。
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
程式碼的各部分是做什麼的?
程式碼的第一行using IronXL;被調用來將程式庫實現在此演示專案中,從而使IronXL功能可用。
然後使用Load方法載入名為"Demo.xlsx"的現有Excel文件,該方法可在WorkBook物件中使用。
Load方法接受三種型別的輸入:檔案名稱與路徑、流和位元組陣列。 在上述範例中,使用帶有路徑的檔案名稱的方法來載入文件。
我如何存取特定工作表和儲存格範圍?
要執行讀取Excel文件操作,我們使用First()方法從工作簿的工作表集合中選擇初始工作表,以取得預設的WorkSheet。 您還可以通過名稱或索引來管理工作表。
隨後,使用工作表物件藉由指定儲存格範圍來選擇Excel工作表範圍。 選擇範圍的功能允許您操作特定儲存格、整行或列。 然後它將遍歷指定範圍(A2:B10)內的每一個儲存格值,並顯示值和儲存格地址。
我應預期此程式碼的哪些輸出?
先前程式碼範例的輸出
上述範例演示了在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
如需更多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。若要存取額外功能、更新和客戶支援,請考慮升級到付費會員。




