跳至頁尾內容
與其他組件的比較
IronXL與Spire.XLS的比較

IronXL 與 Spire XLS 的比較

Microsoft Excel是Microsoft Office的一個組件,專門處理試算表,旨在幫助使用者透過公式和函式組織數字和資料。

您是否曾經想過.NET開發者如何處理Excel檔案? 本文將討論開發者如何處理Excel文件以及哪些工具最適合在Excel文件中保存、閱讀和編輯資料。 對於.NET的開發者來說,轉換Excel文件和編輯現有文件是一個挑戰。 今天,我們將比較兩個處理Excel文件的流行.NET程式庫:Spire.XLS和IronXL。

2. Spire.XLS

Spire.XLS for .NET是一個專業的Excel .NET API,可以用於任何.NET (C#, VB .NET, ASP.NET, .NET Core, .NET 5.0, MonoAndroid 及 Xamarin.iOS) 應用程式來建立、閱讀、寫入、轉換及列印Excel檔案。 這是一個物件模型Excel API,允許您從範本生成新的Excel文件、編輯現有的和在.NET平台上轉換Excel檔案。

這個程式庫是由管理的Excel .NET組件,不需要Microsoft Excel。 它支持經典的Excel 97-2003格式(.xls)和現代Excel(.xlsx, .xlsb, .xlsm)格式。 與設計自己的試算表操作解決方案或使用Microsoft自動化相比,它是快速且可靠的。

Excel加密/解密、單元格隱藏/顯示和工作表鎖定/解鎖是Spire.XLS類別程式庫中可用的安全功能。

2.1. Spire.XLS特點

2.1.1. 平台

Spire.XLS for .NET允許開發者為任何.NET Framework版本從2.0到4.5、.NET 5.0、.NET Core、.NET Standard、MonoAndroid、Xamarin和iOS建立ASP.NET、Web Services、WinForms和其他型別的應用程式。 它支持32位和64位系統。

2.1.2. 文件轉換

Spire.XLS使使用者能夠將Excel文件轉換為不同格式,以及將不同格式的文件轉換為Excel文件:

  • Excel到文字
  • Excel到圖片
  • Excel到PDF文件
  • Excel到HTML
  • XML/CSV到Excel文件
  • Excel到XPS
  • Excel到SVG

2.1.3. 內容和功能

Spire.XLS for .NET提供許多功能來編輯和操作Excel文件,最值得注意的是:

  • 建立和編輯Excel工作簿。
  • 將Excel文件保存到文件流。
  • 在Excel工作簿中查找和替換資料。
  • 排序和驗證資料。
  • 列印文件。
  • 刪除、插入或隱藏行和列。

2.1.4. 格式化功能

Spire.XLS for .NET提供對所有試算表元件和格式化屬性的完全程式化存取,例如字體設置、數字格式設置、文字對齊、圖形物件和格式化工作表、行、列或Excel單元格範圍。

2.1.5. 頁面設置

開發者可以使用Spire.XLS for .NET配置頁面設置參數:

  • 設定列印區域和列印標題,或啟用網格線。
  • 新增頁面分隔符。
  • 建立或更新基於圖片的頁眉和/或頁腳。
  • 更改頁面方向、縮放和紙張尺寸。
  • 設定頁面居中和邊距。

3. IronXL

IronXL是一個.NET程式庫,允許開發者有效地在C#中處理Excel和其他試算表文件。 不需要Office互操作,也不需要在Core或Azure上安裝Microsoft Office。

Iron Software的IronXL套件可以在C#和其他.NET語言中讀取和寫入Excel (XLS, XLSX和CSV) 文件。 它支持.NET Core 2、Framework 4.5、Azure、Mono、移動和Xamarin。

IronXL允許我們建立和匯出XLSX、XLS、CSV、TSV、JSON和XML文件。 我們還可以匯出到System.Data.DataTable物件,以便SQL互操作性。

3.1. IronXL功能

3.1.1. 載入、閱讀和編輯資料

IronXL允許使用者操作Excel文件以載入、閱讀和編輯XLS/XLSX/CSV/TSV中的資料。

3.1.2. 保存和匯出

IronXL允許使用者將Excel文件保存和匯出到XLS/XLSX/CSV/TSV/JSON格式。

3.1.3. System.Data物件

IronXL將Excel試算表作為System.Data.DataTable物件來操作。

3.1.4. 公式

IronXL可以處理Excel公式,這些公式在每次編輯表時都會重新計算。

3.1.5. 範圍

易於使用的WorkSheet語法,例如範圍 ["A1:B10"]。 直觀地組合和建立範圍。

3.1.6. 排序

對範圍、列和行進行排序。

3.1.7. 樣式

Excel單元格的視覺樣式包括字體、大小、背景圖案、邊框、對齊和數字格式。

4. 在Visual Studio中建立新的專案

打開Visual Studio並進入文件選單。 選擇"新專案",然後選擇控制台應用程式。

輸入專案名稱並選擇所需的路徑。 接著,點擊建立按鈕。 選擇所需的.NET框架,如下所示:

Creating a New Project in Visual Studio

Visual Studio專案現在將生成所選應用程式的結構。 如果選擇了控制台、Windows或網頁應用程式,它將打開Program.cs文件,您可以在其中輸入程式碼以構建和運行應用程式。

Project Structure

現在,我們可以新增程式庫並測試該程式。

5. 安裝IronXL程式庫

IronXL程式庫可以通過四種不同的方式下載和安裝:

  • 使用Visual Studio的NuGet套件管理器
  • 使用Visual Studio命令列
  • 從NuGet網頁直接下載
  • 從IronXL網頁直接下載

5.1 使用Visual Studio NuGet套件管理器

Visual Studio提供NuGet套件管理器選項,以直接將套件安裝到解決方案。 以下是打開NuGet套件管理器的方法:

Opening the NuGet Package Manager

在套件管理器中搜索"IronXL",以找到並安裝所需的套件:

Searching for IronXL

選擇IronXL並安裝該套件到您的解決方案。

5.2 使用Visual Studio命令列

  • 在Visual Studio中,進入工具 -> NuGet套件管理器 -> 套件管理器控制台。
  • 在套件管理器控制台中運行以下命令:

    Install-Package IronXL.Excel

該套件現在將下載至當前專案並準備使用。

Installing via Command-Line

5.3 從NuGet網頁直接下載

要直接下載NuGet套件:

  1. 瀏覽到 https://www.nuget.org/packages/IronXL.Excel
  2. 從右側選單中選擇"下載套件"。
  3. 雙擊下載的套件以自動安裝。
  4. 重新載入解決方案並在專案中開始使用。

5.4 從IronXL網頁直接下載

從IronXL的網頁下載最新套件。 下載後:

  1. 在方案資源管理器中右鍵點擊專案。
  2. 選擇"新增參考"並瀏覽到下載的參考位置。
  3. 點擊OK新增該參考。

6. 安裝Spire.XLS

Spire.XLS提供幾乎相同的API整合方法:

  • 使用Visual Studio的NuGet套件管理器
  • 使用Visual Studio的NuGet套件控制台
  • 從Spire.XLS網站直接下載
  • 從NuGet網站直接下載

6.1. 使用Visual Studio NuGet套件管理器

按照IronXL的安裝步驟,打開NuGet套件管理器並搜索Spire.XLS:

Searching for Spire.XLS

選擇所需的套件並安裝。

6.2. 使用Visual Studio NuGet套件控制台

  1. 在Visual Studio中,進入工具 -> NuGet套件管理器 -> 套件管理器控制台。
  2. 在控制台中運行以下命令:

    Install-Package Spire.XLS -Version 12.3.8
    Install-Package Spire.XLS -Version 12.3.8
    SHELL

該套件將在當前專案中下載並安裝。

Installing Spire.XLS via Console

6.3. 從NuGet網站直接下載

要直接下載Spire.XLS:

  1. 瀏覽到 https://www.nuget.org/packages/Spire.XLS/
  2. 從右側選單中選擇"下載套件"。
  3. 雙擊下載的套件以自動安裝。
  4. 重新載入解決方案並在專案中開始使用。

7. 建立新的Excel文件

兩個.NET類別程式庫都允許輕鬆建立新的Excel文件。

7.1. 使用IronXL建立新的Excel文件

IronXL允許建立XLS和XLSX格式的Excel工作表。 使用IronXL建立新工作簿的程式碼如下:

using IronXL;

class Program
{
    static void Main()
    {
        // Create a new workbook in XLS format
        WorkBook xlsWorkbook = WorkBook.Create(ExcelFileFormat.XLS);
        xlsWorkbook.Metadata.Author = "IronXL";

        // Add a blank WorkSheet
        WorkSheet xlsSheet = xlsWorkbook.CreateWorkSheet("new_sheet");

        // Add data and styles to the new worksheet
        xlsSheet["A1"].Value = "Hello World";
        xlsSheet["A2"].Style.BottomBorder.SetColor("#ff6600");
        xlsSheet["A2"].Style.BottomBorder.Type = IronXL.Styles.BorderType.Double;

        // Save the Excel file
        xlsWorkbook.SaveAs("NewExcelFile.xls");
    }
}
using IronXL;

class Program
{
    static void Main()
    {
        // Create a new workbook in XLS format
        WorkBook xlsWorkbook = WorkBook.Create(ExcelFileFormat.XLS);
        xlsWorkbook.Metadata.Author = "IronXL";

        // Add a blank WorkSheet
        WorkSheet xlsSheet = xlsWorkbook.CreateWorkSheet("new_sheet");

        // Add data and styles to the new worksheet
        xlsSheet["A1"].Value = "Hello World";
        xlsSheet["A2"].Style.BottomBorder.SetColor("#ff6600");
        xlsSheet["A2"].Style.BottomBorder.Type = IronXL.Styles.BorderType.Double;

        // Save the Excel file
        xlsWorkbook.SaveAs("NewExcelFile.xls");
    }
}
Imports IronXL

Friend Class Program
	Shared Sub Main()
		' Create a new workbook in XLS format
		Dim xlsWorkbook As WorkBook = WorkBook.Create(ExcelFileFormat.XLS)
		xlsWorkbook.Metadata.Author = "IronXL"

		' Add a blank WorkSheet
		Dim xlsSheet As WorkSheet = xlsWorkbook.CreateWorkSheet("new_sheet")

		' Add data and styles to the new worksheet
		xlsSheet("A1").Value = "Hello World"
		xlsSheet("A2").Style.BottomBorder.SetColor("#ff6600")
		xlsSheet("A2").Style.BottomBorder.Type = IronXL.Styles.BorderType.Double

		' Save the Excel file
		xlsWorkbook.SaveAs("NewExcelFile.xls")
	End Sub
End Class
$vbLabelText   $csharpLabel

7.2. 使用Spire.XLS建立新的Excel文件

Spire.XLS允許在不安裝MS Excel或任何第三方程式庫的情況下建立Excel文件。 以下是範例程式碼:

using Spire.Xls;
using System.IO;

namespace CreateExcelFiles
{
    class Program
    {
        static void Main(string[] args)
        {
            // Instantiate Workbook
            Workbook workbook = new Workbook();
            Worksheet sheet = workbook.Worksheets[0];

            // Set text in a specific cell
            sheet.Range["C10"].Text = "The sample demonstrates how to save an Excel workbook to a stream.";

            // Save the workbook to a stream
            FileStream fileStream = new FileStream("DEMO.xls", FileMode.Create);
            workbook.SaveToStream(fileStream);
            fileStream.Close();

            // Automatically open the new Excel file
            System.Diagnostics.Process.Start("DEMO.xls");
        }
    }
}
using Spire.Xls;
using System.IO;

namespace CreateExcelFiles
{
    class Program
    {
        static void Main(string[] args)
        {
            // Instantiate Workbook
            Workbook workbook = new Workbook();
            Worksheet sheet = workbook.Worksheets[0];

            // Set text in a specific cell
            sheet.Range["C10"].Text = "The sample demonstrates how to save an Excel workbook to a stream.";

            // Save the workbook to a stream
            FileStream fileStream = new FileStream("DEMO.xls", FileMode.Create);
            workbook.SaveToStream(fileStream);
            fileStream.Close();

            // Automatically open the new Excel file
            System.Diagnostics.Process.Start("DEMO.xls");
        }
    }
}
Imports Spire.Xls
Imports System.IO

Namespace CreateExcelFiles
	Friend Class Program
		Shared Sub Main(ByVal args() As String)
			' Instantiate Workbook
			Dim workbook As New Workbook()
			Dim sheet As Worksheet = workbook.Worksheets(0)

			' Set text in a specific cell
			sheet.Range("C10").Text = "The sample demonstrates how to save an Excel workbook to a stream."

			' Save the workbook to a stream
			Dim fileStream As New FileStream("DEMO.xls", FileMode.Create)
			workbook.SaveToStream(fileStream)
			fileStream.Close()

			' Automatically open the new Excel file
			System.Diagnostics.Process.Start("DEMO.xls")
		End Sub
	End Class
End Namespace
$vbLabelText   $csharpLabel

8. CSV到Excel

將CSV轉換為Excel是一種流行的格式轉換。 IronXL和Spire.XLS都提供了這項功能。

8.1. 使用IronXL將CSV轉換為Excel

IronXL能夠輕鬆地從CSV格式產生Excel工作簿。 以下是如何將CSV文件轉換為Excel:

using IronXL;

class Program
{
    static void Main()
    {
        // Load CSV file into a workbook
        WorkBook workbook = WorkBook.LoadCSV("test.csv", fileFormat: ExcelFileFormat.XLSX, ListDelimiter: ",");
        WorkSheet ws = workbook.DefaultWorkSheet;

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

class Program
{
    static void Main()
    {
        // Load CSV file into a workbook
        WorkBook workbook = WorkBook.LoadCSV("test.csv", fileFormat: ExcelFileFormat.XLSX, ListDelimiter: ",");
        WorkSheet ws = workbook.DefaultWorkSheet;

        // Save the workbook as an Excel file
        workbook.SaveAs("CsvToExcelConversion.xlsx");
    }
}
Imports IronXL

Friend Class Program
	Shared Sub Main()
		' Load CSV file into a workbook
		Dim workbook As WorkBook = WorkBook.LoadCSV("test.csv", fileFormat:= ExcelFileFormat.XLSX, ListDelimiter:= ",")
		Dim ws As WorkSheet = workbook.DefaultWorkSheet

		' Save the workbook as an Excel file
		workbook.SaveAs("CsvToExcelConversion.xlsx")
	End Sub
End Class
$vbLabelText   $csharpLabel

8.2. 使用Spire.XLS將CSV轉換為Excel

Spire.XLS可以有效地處理CSV到Excel的轉換。 以下是如何實現這一點:

using Spire.Xls;

namespace ConvertCsvToExcel
{
    class Program
    {
        static void Main(string[] args)
        {
            // Create an instance of Workbook class
            Workbook workbook = new Workbook();

            // Load a CSV file
            workbook.LoadFromFile(@"ExcelToCSV.csv", ",", 1, 1);

            // Get the first worksheet and used range
            Worksheet sheet = workbook.Worksheets[0];
            CellRange usedRange = sheet.AllocatedRange;
            usedRange.IgnoreErrorOptions = IgnoreErrorType.NumberAsText;

            // Autofit columns and rows
            usedRange.AutoFitColumns();
            usedRange.AutoFitRows();

            // Save the result file
            workbook.SaveToFile("CSVToExcel.xlsx", ExcelVersion.Version2013);
        }
    }
}
using Spire.Xls;

namespace ConvertCsvToExcel
{
    class Program
    {
        static void Main(string[] args)
        {
            // Create an instance of Workbook class
            Workbook workbook = new Workbook();

            // Load a CSV file
            workbook.LoadFromFile(@"ExcelToCSV.csv", ",", 1, 1);

            // Get the first worksheet and used range
            Worksheet sheet = workbook.Worksheets[0];
            CellRange usedRange = sheet.AllocatedRange;
            usedRange.IgnoreErrorOptions = IgnoreErrorType.NumberAsText;

            // Autofit columns and rows
            usedRange.AutoFitColumns();
            usedRange.AutoFitRows();

            // Save the result file
            workbook.SaveToFile("CSVToExcel.xlsx", ExcelVersion.Version2013);
        }
    }
}
Imports Spire.Xls

Namespace ConvertCsvToExcel
	Friend Class Program
		Shared Sub Main(ByVal args() As String)
			' Create an instance of Workbook class
			Dim workbook As New Workbook()

			' Load a CSV file
			workbook.LoadFromFile("ExcelToCSV.csv", ",", 1, 1)

			' Get the first worksheet and used range
			Dim sheet As Worksheet = workbook.Worksheets(0)
			Dim usedRange As CellRange = sheet.AllocatedRange
			usedRange.IgnoreErrorOptions = IgnoreErrorType.NumberAsText

			' Autofit columns and rows
			usedRange.AutoFitColumns()
			usedRange.AutoFitRows()

			' Save the result file
			workbook.SaveToFile("CSVToExcel.xlsx", ExcelVersion.Version2013)
		End Sub
	End Class
End Namespace
$vbLabelText   $csharpLabel

9. 授權

IronXL授權

IronXL提供免費的開發者授權,Lite捆綁包從零隱藏費用的價格開始。 SaaS和OEM分發是可能的。 所有授權均提供30天退款保證、一年的軟體支援和升級,以及永久授權。 有關IronXL價格和授權的更多詳細資訊,請存取他們的官方授權頁面

Spire.XLS授權

Spire.XLS提供三種授權類別:

  • 免費版本:每個工作簿限制為五個工作表,每個工作表限制200行。 列印功能不可用。
  • 標準版本:限制於.NET,無法使用列印或轉換支援。
  • 專業版:作為Spire.XLS包的一部分,支持多種轉換,如Excel轉PDF、HTML、CSV等。

結論

IronXL for .NET幫助開發者將Excel轉換為多種格式,提供Excel在C#和其他.NET語言中的讀寫功能。 它支持.NET Core 2、Framework 4.5、Azure、Mono、移動和Xamarin。 IronXL已整合了如IronOCR、IronPDF、IronBarcode和IronWebscraper等工具。

Spire.XLS也提供了建立、編輯和轉換Excel文件的能力,支持經典和現代的Excel格式。

相比之下,IronXL提供了更多功能以及具有競爭力的價格結構。 欲了解更多資訊,請存取IronXL網站,關於下載,請存取這個NuGet連結

Spire.XLS是其各自所有者的註冊商標。 本網站與Spire.XLS沒有隸屬關係、不受其認可或贊助。 所有產品名稱、標誌和品牌均為其各自所有者的財產。 比較僅供資訊參考,反映了撰寫時公開可用的資訊。)}]

常見問題

如何在C#中將HTML轉換為PDF?

您可以使用IronPDF的RenderHtmlAsPdf方法將HTML字串轉換為PDF。您也可以使用RenderHtmlFileAsPdf將HTML文件轉換為PDF。

IronXL的主要功能是什麼?

IronXL支持有效率地讀寫Excel (XLS, XLSX, CSV)文件,不需要Office Interop或Microsoft Office的安裝。它提供強大的資料操作、匯出功能和公式管理。

如何安裝IronXL以處理C#中的Excel文件?

可以使用Visual Studio的NuGet Package Manager、Visual Studio命令列,或者直接從NuGet或IronXL網站下載來安裝IronXL。

如何使用IronXL將CSV文件轉換為Excel?

您可以使用IronXL將CSV文件載入到WorkBook中,然後將其保存為所需的Excel格式。

IronXL的授權選項有哪些?

IronXL提供免費的開發者授權,還有附加的SaaS和OEM分發授權選項。所有授權都包含30天退款保證和一年軟體支援和升級。

如何使用IronXL建立Excel文件?

要使用IronXL建立Excel文件,可以使用WorkBook類別在XLS或XLSX格式中建立工作簿,新增工作表,插入資料,應用樣式,並將文件保存到所需位置。

IronXL與Spire.XLS的比較如何?

兩個程式庫都提供建立、編輯和轉換Excel文件的功能。IronXL提供更多功能,包括與其他工具的整合,而Spire.XLS支持傳統和現代Excel格式。IronXL以其具有競爭力的定價結構和廣泛的Excel文件操控和轉換能力而著稱。

什麼是Spire.XLS for .NET?

Spire.XLS for .NET是一個專業的Excel API,允許開發人員在各種.NET應用中建立、讀取、寫入、轉換和列印Excel文件,支持多個框架和格式。

Spire.XLS支持哪些Excel格式?

Spire.XLS支持多種Excel格式,如.xls、.xlsx、.xlsb和.xlsm,允許全面的Excel文件建立、編輯和轉換,無需Microsoft Excel。

IronXL可以在沒有安裝Microsoft Office的情況下使用嗎?

是的,IronXL可以有效率地讀寫Excel文件,不需要Office Interop或Microsoft Office的安裝。

Curtis Chau
技術作家

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

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

Iron 支援團隊

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