跳至頁尾內容
使用 IRONXL

無需 Microsoft Office 即可在 C# 中處理 Excel 文件

IronXL簡介

IronXL函式庫是 C# 中傳統Excel Interop的替代方案,它提供了一種更精簡、更有效率的 Excel 檔案處理方法。

這是一個實用的 Excel API,供開發人員在 .NET 應用程式中管理 Microsoft Excel 資料時使用,它獨立於 Microsoft Office 運行。它提供了一種簡單的方法來管理各種格式的 Excel 文件,例如 XLSX、XLS 和 CSV。

為什麼選擇 IronXL?

IronXL 無需在伺服器上安裝 MS Office,因此是各種伺服器環境下的理想解決方案。

因此,對於由於許可或伺服器效能限製而無法安裝 Microsoft Office 的伺服器環境來說,它是一種理想的解決方案。

IronXL 的主要特點

IronXL的主要特點如下:

-讀取和寫入 Excel 檔案: IronXL 可以建立和操作 Excel 檔案。 它同時支援經典的 XLS 和現代的 XLSX 檔案格式,確保與不同版本的 Excel 相容。 -資料匯出: IronXL 可以有效率地將資料從 Excel 檔案匯出到其他格式,例如 XML 檔案、CSV 等格式。 -支援 .NET Core 和 .NET Framework: IronXL 可與 .NET Core 和 .NET Framework 無縫協作,使其成為各種開發環境的通用選擇。 -易用性:借助 IronXL,開發人員可以用最少的程式碼行執行複雜的 Excel 操作,從而提高生產力和效率。

安裝和設定

要開始使用 IronXL,您需要安裝 NuGet 套件。 具體操作方法如下:

透過 NuGet 套件管理器:在 NuGet 套件管理器中搜尋IronXL並安裝它。

無需 Office 的 C# Excel 庫(入門教學):圖 1

使用套件管理器控制台:在 Visual Studio 的套件管理器控制台中執行命令Install-Package IronXL.Excel

與 IronXL 合作

IronXL 使 C# 開發人員能夠有效率地與 Excel 檔案進行互動。 本節將深入探討您可以使用 IronXL 執行的各種操作,並提供詳細的指導和程式碼範例。

建立新的 Excel 文件

建立新的 Excel 檔案是資料處理和報表中的常見任務。 使用 IronXL,您只需幾行程式碼即可輕鬆建立 Excel 文件,新增工作表,並向其中填充資料。

以下程式碼顯示如何使用 IronXL建立 Excel 檔案

using IronXL;

// Initialize a new Workbook
var workbook = new WorkBook();
// Add a new Worksheet named "Sales Data"
var worksheet = workbook.CreateWorkSheet("Sales Data");

// Populate the Worksheet with data
worksheet["A1"].Value = "Month";
worksheet["B1"].Value = "Sales";
worksheet["A2"].Value = "January";
worksheet["B2"].Value = 5000;
worksheet["A3"].Value = "February";
worksheet["B3"].Value = 6000;

// Save the Workbook as an Excel file
workbook.SaveAs("SalesReport.xlsx");
using IronXL;

// Initialize a new Workbook
var workbook = new WorkBook();
// Add a new Worksheet named "Sales Data"
var worksheet = workbook.CreateWorkSheet("Sales Data");

// Populate the Worksheet with data
worksheet["A1"].Value = "Month";
worksheet["B1"].Value = "Sales";
worksheet["A2"].Value = "January";
worksheet["B2"].Value = 5000;
worksheet["A3"].Value = "February";
worksheet["B3"].Value = 6000;

// Save the Workbook as an Excel file
workbook.SaveAs("SalesReport.xlsx");
$vbLabelText   $csharpLabel

無需 Office 的 C# Excel 庫(入門教學):圖 2

這段程式碼會建立一個工作簿,新增一個工作表,並用銷售資料填入該工作表,然後將其儲存為 Excel 檔案。

IronXL 支援標準 Excel 表示法,使開發人員能夠引用"A1"等儲存格來讀取和操作資料。

讀取 Excel 文件

從 Excel 檔案中讀取和提取資訊對於資料處理應用至關重要。 IronXL 可讓您開啟現有的 Excel 檔案並讀取其內容,而無需 Excel 互通。

以下是一個程式碼範例:

using IronXL;

// Load an existing Excel file
var workbook = WorkBook.Load("FinancialData.xlsx");

// Access a specific worksheet by name
var worksheet = workbook.GetWorkSheet("Quarterly Report");

// Read values from specific cells
string quarter = worksheet["A2"].StringValue;
double revenue = worksheet["B2"].DoubleValue;
double expenses = worksheet["C2"].DoubleValue;

// You can also iterate over rows and columns if needed
foreach (var row in worksheet.Rows)
{
    foreach (var cell in row)
    {
        Console.WriteLine(cell.Value);
    }
}
using IronXL;

// Load an existing Excel file
var workbook = WorkBook.Load("FinancialData.xlsx");

// Access a specific worksheet by name
var worksheet = workbook.GetWorkSheet("Quarterly Report");

// Read values from specific cells
string quarter = worksheet["A2"].StringValue;
double revenue = worksheet["B2"].DoubleValue;
double expenses = worksheet["C2"].DoubleValue;

// You can also iterate over rows and columns if needed
foreach (var row in worksheet.Rows)
{
    foreach (var cell in row)
    {
        Console.WriteLine(cell.Value);
    }
}
$vbLabelText   $csharpLabel

這段程式碼示範如何載入 Excel 檔案、存取特定工作表以及讀取儲存格中的值,包括遍歷行和列。

將資料寫入 Excel 文件

修改Excel檔案是一項常見的需求。 IronXL 讓您能夠輕鬆地在 Excel 檔案中寫入和更新資料。

以下範例示範如何在 Excel 檔案中新增和更新資料:

using IronXL;

// Load an existing Excel file
var workbook = WorkBook.Load("EmployeeData.xlsx");
var worksheet = workbook.DefaultWorkSheet;

// Adding new data to cells
worksheet["A4"].Value = "John Doe";
worksheet["B4"].Value = "Sales";
worksheet["C4"].Value = 45000;

// Updating existing data
worksheet["C2"].Value = 50000; // Update salary of an existing employee

// Save the changes to a new file
workbook.SaveAs("UpdatedEmployeeData.xlsx");
using IronXL;

// Load an existing Excel file
var workbook = WorkBook.Load("EmployeeData.xlsx");
var worksheet = workbook.DefaultWorkSheet;

// Adding new data to cells
worksheet["A4"].Value = "John Doe";
worksheet["B4"].Value = "Sales";
worksheet["C4"].Value = 45000;

// Updating existing data
worksheet["C2"].Value = 50000; // Update salary of an existing employee

// Save the changes to a new file
workbook.SaveAs("UpdatedEmployeeData.xlsx");
$vbLabelText   $csharpLabel

在這個例子中,新資料被加入到 Excel 檔案中,現有資料被更新,顯示了 IronXL 在資料操作方面的靈活性。

無需 Office 的 C# Excel 庫(入門教學):圖 3

匯出 Excel 數據

將 Excel 文件中的資料匯出為其他格式,對於資料分析和報表通常是必要的。 IronXL 簡化了這個過程。

以下是如何將 Excel 檔案中的資料匯出為 CSV 格式的方法:

using IronXL;

// Load the Excel file
var workbook = WorkBook.Load("ProjectData.xlsx");

// Export the entire Workbook or a specific Worksheet to CSV
workbook.SaveAsCsv("ProjectData.csv");

// You can also export to other formats like JSON
workbook.SaveAsJson("ProjectData.json");
using IronXL;

// Load the Excel file
var workbook = WorkBook.Load("ProjectData.xlsx");

// Export the entire Workbook or a specific Worksheet to CSV
workbook.SaveAsCsv("ProjectData.csv");

// You can also export to other formats like JSON
workbook.SaveAsJson("ProjectData.json");
$vbLabelText   $csharpLabel

此程式碼片段示範了將 Excel 檔案轉換為 CSV 和 JSON 格式的過程,突顯了 IronXL 在處理不同檔案格式方面的多功能性。

IronXL 的進階功能

IronXL 不僅僅是基本的 Excel 操作; 它配備了許多高級功能,可滿足複雜的資料處理和格式化需求。 讓我們更詳細地了解其中的一些功能。

使用數據表

在 IronXL 中,Excel 表格和 .NET 資料表之間的轉換功能增強了資料處理的靈活性。 此功能在涉及批次資料操作或與資料庫互動的場景中特別有用。

using IronXL;
using System.Data;

// Load an existing Excel file
var workbook = WorkBook.Load("EmployeeRecords.xlsx");
var worksheet = workbook.DefaultWorkSheet;

// Convert the Worksheet to a DataTable
DataTable dataTable = worksheet.ToDataTable(true);
using IronXL;
using System.Data;

// Load an existing Excel file
var workbook = WorkBook.Load("EmployeeRecords.xlsx");
var worksheet = workbook.DefaultWorkSheet;

// Convert the Worksheet to a DataTable
DataTable dataTable = worksheet.ToDataTable(true);
$vbLabelText   $csharpLabel

針對大型 Excel 檔案的效能優化

IronXL 的一個關鍵特性是能夠有效地處理大型 Excel 文件,使其適用於處理大量資料的企業級應用程式。

IronXL 旨在最大限度地減少記憶體使用量,並在處理大型 Excel 檔案時優化效能。

它透過高效的資料處理演算法以及允許選擇性讀取工作表和單元格來實現這一點,從而降低系統資源的負載。

處理Excel檔案格式

IronXL 支援多種 Excel 檔案格式,確保與不同版本的 Excel 和其他電子表格軟體相容。

using IronXL;

// Creating a workbook
var workbook = new WorkBook();

// You can save the Workbook in various formats
workbook.SaveAs("ExcelDocument.xlsx"); // XLSX format
workbook.SaveAs("ExcelDocument.xls");  // XLS format
workbook.SaveAsCsv("ExcelDocument.csv");  // CSV format
using IronXL;

// Creating a workbook
var workbook = new WorkBook();

// You can save the Workbook in various formats
workbook.SaveAs("ExcelDocument.xlsx"); // XLSX format
workbook.SaveAs("ExcelDocument.xls");  // XLS format
workbook.SaveAsCsv("ExcelDocument.csv");  // CSV format
$vbLabelText   $csharpLabel

此範例展示了 IronXL 如何建立和保存 XLSX、XLS 和 CSV 格式的文檔,從而在資料儲存和共用方面提供了靈活性。

結論

無需 Office 的 C# Excel 庫(入門教學):圖 4

IronXL 是一個功能強大的 C# 程式庫,無需 Microsoft Office 即可處理 Excel 檔案。它具有讀取、寫入和匯出 Excel 檔案的功能,並且易於使用,同時支援 .NET Core 和 .NET Framework,因此對於需要在應用程式中處理 Excel 資料的開發人員來說,IronXL 是一個絕佳的選擇。

無論您是建立新的 Excel 文件、處理現有文件,還是將資料匯出為不同格式,IronXL 都能提供強大且高效的解決方案。

如需更詳細的文件、程式碼範例和支持,請造訪 IronXL 官方網站或查看其 GitHub 儲存庫。 使用 IronXL,在 C# 中管理 Excel 檔案將變得輕鬆便捷。

IronXL 提供免費試用,用戶可以在購買前探索其功能和功能。 試用期允許開發人員在自己的環境中測試該程式庫,以確保它滿足他們在 .NET 應用程式中對 Excel 文件操作的特定需求。

試用期結束後,IronXL 的授權起價為$799 ,提供對其所有高級特性和功能的完整存取權。

常見問題解答

IronXL 如何在沒有 Microsoft Office 的情況下運作?

IronXL 旨在無需 Microsoft Office 即可在 .NET 應用程式中管理 Excel 檔案。它提供了一個精簡的 API,讓開發人員無需依賴 Office Interop 即可執行 Excel 操作。

在伺服器環境下使用 IronXL 進行 Excel 操作有哪些好處?

IronXL 非常適合伺服器環境,因為它無需安裝 Microsoft Office,從而避免了許可或效能問題。即使在無法安裝 Office 的環境中,它也能實現無縫的 Excel 檔案操作。

如何使用 IronXL 讀取和寫入 Excel 檔案?

使用 IronXL,您可以透過初始化一個新的Workbook 、存取Worksheet物件以及使用方法來讀取和寫入 Excel 儲存格中的數據,從而讀取和寫入 Excel 文件。

IronXL 支援哪些 Excel 檔案格式?

IronXL 支援多種 Excel 檔案格式,包括 XLSX、XLS 和 CSV。它還允許將資料匯出為 XML 和 JSON 等格式,從而增強資料互通性。

如何在我的.NET專案中安裝IronXL?

您可以透過 NuGet 套件管理員搜尋「IronXL」來安裝 IronXL,或在套件管理器控制台中執行命令Install-Package IronXL.Excel

IronXL 是否同時相容於 .NET Core 和 .NET Framework?

是的,IronXL 與 .NET Core 和 .NET Framework 都相容,使其成為各種開發環境的靈活選擇。

IronXL能否高效處理大型Excel檔案?

IronXL 經過最佳化,能夠有效地處理大型 Excel 文件,最大限度地減少記憶體使用,並提供選擇性讀取和寫入資料的方法。

如何使用 IronXL 將 Excel 資料匯出為其他格式?

IronXL 可讓您將 Excel 資料匯出為 CSV 和 JSON 等格式,從而方便在不同平台上進行資料分析和報表。

IronXL 為 Excel 資料處理提供了哪些進階功能?

IronXL 提供進階功能,例如將 Excel 表格轉換為 .NET 資料表,並透過高效的資料處理演算法優化大型資料集的效能。

IronXL有免費試用版嗎?

是的,IronXL 為新用戶提供免費試用。這樣您就可以在決定購買完整版許可證之前,先體驗其各項功能。

喬迪·巴迪亞
軟體工程師
喬迪精通Python、C#和C++,除了在Iron Software運用這些技能外,他還從事遊戲程式設計。他參與產品測試、產品開發和研究等工作,為產品的持續改進做出了巨大貢獻。豐富的經驗讓他始終保持挑戰性和工作熱情,他表示這是他最喜歡在Iron Software工作的原因之一。喬迪在佛羅裡達州邁阿密長大,畢業於佛羅裡達大學,主修電腦科學和統計學。