跳過到頁腳內容
使用 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是什麼?

C# .NET Excel 函式庫 IronXL 可用於讀取 Microsoft Excel 文件中的資料並將其轉換為 CSV 檔案。 IronXL 不需要安裝 Microsoft Office、Microsoft.Office.Interop.Excel 或 Excel Interop。 這是一個完全獨立的 .NET Excel 應用程式函式庫,能與 Docker 容器無縫協作,並可部署至 AWS Lambda 函式Azure 雲端服務。 它可以讀取多種電子表格格式。

透過 IronXL 簡單易用的 C# API,可以在 .NET 環境中輕鬆產生、修改和檢視 Excel 電子表格。 IronXL 完整支援核心 .NET Core 應用程式、Linux 環境macOS 系統、Azure 及 Xamarin。 此函式庫亦能與 Blazor 應用程式無縫整合,用於讀取 Excel 檔案.NET MAUI 專案。 以下是 IronXL 的主要功能列表,這些功能使其與其他讀取 Excel 檔案的應用程式區分開來。

IronXL 有哪些突出的關鍵功能?

為何應選擇 IronXL 程式庫而非其他 Excel 函式庫?

憑藉這些特性,IronXL 成為一個靈活且強大的 Excel 文件處理庫,為開發人員在以程式設計方式管理與 Excel 文件相關的任務時提供了更大的便利性和靈活性。 該函式庫提供詳盡的 API 參考文件及豐富的教學指南,協助開發者快速上手。 要了解有關 IronXL 庫的更多信息,請參閱這些文件

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

IronXL程式庫能讓您輕鬆寫入資料,並建立及讀取 Excel 檔案,您將在接下來的章節中看到相關內容。 開始之前,請確認您已正確設定授權金鑰(若使用完整版),或可先從免費試用授權版開始。 對於網頁應用程式,您可能需要在 web.config 檔案中設定授權金鑰

首先,讓我們建立一個用於處理 Excel 檔案的新專案:

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

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

.NET"控制台應用程式"專案範本將顯示在隨後的對話方塊中; 選中它們,然後雙擊"下一步"。

Visual Studio"新增項目"對話方塊顯示各種 C# 專案模板,包括控制台應用程式、ASP.NET Core Web 應用程式、Blazer 伺服器應用程式和 ASP.NET Core Web API。 新專案

我應該設定哪些專案設定?

在"位置"區域輸入新項目的位置後,您可以為"項目"輸入您想要的任何項目名稱。 對於本教程,可以考慮使用類似"ExcelReaderApp"或"IronXLDemo"這樣的描述性名稱。 按下"下一步"按鈕繼續。

Visual Studio 新專案設定對話方塊顯示建立 C# 控制台應用程式的選項,其中專案名稱"ExcelReaderApp"和典型專案位置路徑欄位為空。 專案配置

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

透過"框架"下拉式選單,您可以選擇 .NET Framework。 這裡使用的是長期支援版本的 .NET 6.0。 IronXL 支援多種 .NET 版本,您可根據專案需求進行選擇。 點選"建立"後,再點選"建立"。

Visual Studio 專案設定畫面,顯示主控台應用程式設定,並標示 .NET Framework 6.0 為已選取的框架。 勿使用頂層陳述式核取方塊清晰可見且未勾選。 目標框架選擇

如何安裝 IronXL 程式庫?

以下解決方案需要 IronXL 庫,您應該取得該庫。 為此,請在軟體包管理器控制台中輸入以下命令:

Install-Package IronXL.Excel

Visual Studio 中的套件管理器控制台視窗顯示"Install-Package IronXL.Excel"命令已成功安裝,並顯示了安裝進度和確認訊息。 IronXL 安裝

另一種方法是使用 NuGet 套件管理器搜尋"IronXL"套件。

瀏覽後應該會顯示連結到 IronXL 的所有 NuGet 套件的清單。 然後,選擇所需的版本並點擊安裝按鈕。

Visual Studio 中的 NuGet 套件管理器視窗突顯了版本為 2023.4.13 的 IronXL.Excel 套件。 "安裝"按鈕被顯著地突出顯示,並帶有指向它的箭頭。 NuGet 套件管理器

如何使用 IronXL 讀取 Excel 檔案?

以下程式碼可讓您使用 IronXL 載入和讀取 Excel 檔案。 此範例示範了不使用 Interop 讀取 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 功能可用。

然後使用@@--CODE-99315-- @@ 物件中提供的方法 WorkBook載入名為"Demo.xlsx"的現有 Excel 檔案。

Load 方法接受三種類型的輸入:帶路徑的檔案名稱、流和位元組數組。 在上面的例子中,使用檔案名稱和路徑的方法來載入檔案。

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

若要執行讀取 Excel 檔案操作,我們使用 @@ --CODE-99319--@@ 方法從工作簿的工作表集合中選擇初始工作表,從而獲得預設值 WorkSheet 。 您也可以透過名稱或索引來存取並管理工作表

然後,透過指定儲存格區域,使用工作表物件選擇 Excel 工作表區域。 "選取範圍"功能讓您能夠操作特定儲存格、整行或整欄。 然後它將遍歷指定範圍內的每個單元格值(A2:B10),並顯示該值以及單元格位址。

這段程式碼會產生什麼輸出?

! Excel 電子表格顯示範例資料(客戶名稱、訂單日期、產品等),下方 C# 控制台視窗顯示 IronXL 程式碼讀取的儲存格參考和值。 上一個程式碼範例的輸出

以上範例示範如何在 C# 中使用 IronXL 載入 Excel 檔案及其輸出結果。 它利用 Excel 表格,透過引用行和列索引來存取資料。

如何處理不同的 Excel 檔案格式?

IronXL 除了標準的 XLSX 檔案格式外,還支援多種其他 Excel 檔案格式。 您可以使用相同的 API讀取 XLSX 檔案、處理舊版 XLS 格式,甚至讀取 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。

IronXL 可以完全解決所有涉及 Microsoft Excel 文件的可編程任務。 您可以新增和刪除資料、尋找和取代、合併和取消合併資料表或儲存格對字串或數字進行排序視覺化資料表以及儲存檔案。 IronXL 也支援使用編輯公式功能進行公式計算。 您也可以設定儲存格資料類型並使用它來檢查電子表格資料。 IronXL 具備讀取和寫入 CSV 檔案的功能,這對於處理 Excel 資料至關重要。

探索進階功能

掌握如何載入 Excel 檔案後,不妨探索一下以下進階功能:

-資料處理將 Excel 資料匯入您的應用程序,以程式設計方式編輯 Excel 文件,並匯出為各種格式。 -格式和樣式:套用儲存格字體和大小,設定邊框和對齊方式,新增背景圖案和顏色,並實現條件格式。 -處理複雜結構:建立和管理命名範圍,處理命名表,對行/列進行分組和取消分組,以及處理凍結窗格。 -資料整合:在Excel 和 SQL 資料庫之間進行轉換,使用資料表,並將Excel 轉換為 JSON/XML 。 -安全性與保護使用密碼加密工作簿保護單一工作表,並管理工作簿元資料。 -視覺元素建立 Excel 圖表新增註解插入超連結處理影像

想自己試試看嗎?

IronXL 提供免費試用,用戶可以選擇升級到付費會員,享受 1 年的會員服務,以獲得更新和客戶支援。 IronXL 會額外收取安全費用,以確保產品能夠不受限制地分發。 若要了解定價的具體細節,請參閱此授權頁面

常見問題解答

如何在 C# 中不使用 Interop 載入 Excel 檔案?

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

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

要在 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 上運行,允許開發人員在多樣化環境中使用該庫。

如何在 Excel 中使用 IronXL 管理不同數據類型?

IronXL 可以管理 Excel 列中的各種數據類型,例如文本、數字、日期和公式,提供靈活的數據操作解決方案。

在 C#中使用 IronXL 明顯優於其他技術的優勢是什麼?

IronXL 的主要優勢包括易用性、多平台相容性、支援多種 Excel 格式,以及不依賴 Microsoft Excel 安裝。

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

您可以免費試用 IronXL。為了獲得更多功能、更新及客戶支持,建議升級到付費會員。

Jordi Bardia
軟體工程師
Jordi 在 Python、C# 和 C++ 上最得心應手,當他不在 Iron Software 展現技術時,便在做遊戲編程。在分担產品测测试,產品開發和研究的责任時,Jordi 為持续的產品改進增值。他说这种多样化的经验使他受到挑战并保持参与, 而这也是他与 Iron Software 中工作一大乐趣。Jordi 在佛罗里达州迈阿密长大,曾在佛罗里达大学学习计算机科学和统计学。

鋼鐵支援團隊

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