与其他组件比较

IronXL与Syncfusion Excel的比较

发布 2022年六月7日
分享:

简介

对于开发人员来说,以编程方式操作 Excel 可能很困难。在尝试编辑 Microsoft Excel 文件时会出现一些问题。主要问题是难以使用用户界面和缺乏文档,因此很难处理 Excel 文件。不过幸运的是,我们现在有了一些由熟练程序员编写的 Excel 库。这些库有助于编辑 Microsoft Excel 文件数据。下面我将讨论两个 Excel C# 库:

  • IronXL:C# Excel 库
  • Syncfusion Excel 框架

让我们开始比较这些库。

IronXL:C# Excel 库

IronXL 是一个由 C# 代码组成的 .NET Excel 库。 铁软件 用于对 Excel 文档进行编程操作。IronXL 是基于 .NET框架 它简化了通常需要 Microsoft Excel 才能运行的应用程序的开发过程。

IronXL 为程序员提供了一组类、方法和属性,可用于 读写数据 操作工作簿对象、 访问外部数据源载入数据 到 Excel 工作簿中。

让我们来看看 IronXL 的功能。

IronXL 的功能

有许多 IronXL 的特点 使其从其他图书馆中脱颖而出。

加载、读取和编辑数据

使用 IronXL,我们可以从 XLS 等电子表格文档中加载、读取和编辑数据、 XLSXXLST, XLSM、 CSV和 TSV。IronXL 提供了非常简单易记的功能来创建、读取和编辑这些电子表格文档。它提供对文档的完全控制。

创建图表

IronXL 具有多种创建电子表格的功能,包括 定制图表.它有很好的 API 文档来支持它们。

保存和导出

IronXL 可保存和导出多种格式的文档。IronXL 可将 Excel 文件导出或转换为 XLS、XLSX、XLST、XLSM、CSV、TSV 和 JSON 文件格式。

使用公式

IronXL 支持 使用公式 在 Excel 文件中。我们可以根据需要创建任何公式并将其应用到任何单元格中。IronXL 具有出色而简单的函数,可帮助我们使用公式。

单元格数据格式

Excel 用户经常需要在 Excel 单元格中使用格式。IronXL 支持高级 条件格式 功能。IronXL 通过简单易用的功能帮助用户格式化单元格数据。IronXL 支持 Microsoft Excel 支持的所有格式。你可以使用这些格式格式化数据:

  • 文本
  • 编号
  • 公式
  • 日期
  • 货币
  • 百分比
  • 科学
  • 时间

  • 自定义格式

单元格样式

单元格样式是 Microsoft Excel 的一项重要功能,有助于区分重要数据。它非常有用,IronXL 也支持这一功能。你可以更改字体样式和字体大小、 背景图案, 边界和对齐方式 使用 IronXL 功能。

Syncfusion Excel

......(英文 Syncfusion 库 提供了用于读写和操作 Microsoft Excel 的应用程序接口 (电子表格) 文件。Syncfusion 库是一个 C# 库,开发人员可以用它来创建读写和操作 Microsoft Excel 的应用程序。 (电子表格) 文件 定制数据导入 还支持它兼容所有支持 C# 编程语言的操作系统。

Syncfusion Excel 的功能

让我们来看看 Syncfusion Excel 库的功能:

让我们来看看这些库是如何工作的。为了检查各种功能,我们需要先创建一个 C# 项目。那么,让我们开始吧。

1.创建 C# 项目

本教程将使用 Visual Studio 2019 版本 (建议使用最新版本) 和 C# 编程语言来构建一个项目。

  • 打开 Visual Studio 2019。
  • 点击 "创建",创建一个新项目。

  • 从模板中选择 C# 控制台应用程序,然后点击 Next 按钮。

    控制台应用程序

    控制台应用程序

  • 为项目命名,然后单击 "下一步 "按钮。

    项目配置

    项目配置

  • 选择 .NET 目标框架 >= 3.1,因为 3.1 支持并适用于所有设备。最新、最稳定的 .NET 框架版本是 5.0。点击 Create 按钮。它将创建一个 C# 控制台应用程序。

    .NET 目标框架

    .NET 目标框架

您也可以使用现有的 C# 项目。只需打开项目并安装库即可。我们将在下一节了解如何安装 Excel 库。

2.安装 IronXL 库

下载和安装 IronXL 库有多种方法。具体如下

1.软件包管理器控制台

2.使用 NuGet 软件包管理器

2.1 软件包管理器控制台

我们可以使用软件包管理器控制台安装 IronXL 库。请按照以下步骤安装:

  • 打开软件包管理器控制台。它通常位于 Visual Studio 的底部。

    软件包管理器控制台 软件包管理器控制台

  • 键入以下命令并按 Enter。
  :ProductInstall
  • 它将开始安装 IronXL 库。

    IronXL 安装

    IronXL 安装

  • 安装完成后,我们就可以在项目中使用它了。

2.2 使用 NuGet 软件包管理器安装

我们可以直接从 NuGet 包管理器安装 IronXL 库。请按照以下步骤安装 IronXL:

  • 点击菜单栏中的 "工具",然后将鼠标悬停在 NuGet 包管理器上。

    NuGet 软件包管理器

    NuGet软件包管理器

  • 选择 "管理解决方案的 NuGet 包"。点击 Browse 并在搜索栏中写入 IronXL。搜索结果中将显示 IronXL 库。

    管理 NuGet 软件包

    管理NuGet软件包

  • 单击 IronXL.Excel 并单击 Install 按钮。它将自动安装该库。

3.安装 Syncfusion Excel 库

我们可以使用软件包管理器控制台安装 Syncfusion Excel 库。与 IronXL 不同的是,我们需要为 Windows Forms、WPF、ASP.NET、UWP 等不同项目安装不同的库。我们需要为不同的平台编写不同的命令。

3.1 使用软件包管理器控制台进行安装

按照以下步骤安装 Syncfusion Excel 库:

  • 转到软件包管理器控制台。
  • 编写以下命令安装 Syncfusion Excel 库:

  • 编写以下命令,以便在 Windows 窗体和 WPF 中使用 Syncfusion Excel 库。
    :InstallCmd Install-Package Syncfusion.XlsIO.WinForms
    :InstallCmd Install-package Syncfusion.XlsIO.Wpf
  • 它将开始安装库。安装完成后,您就可以在项目中轻松使用 Syncfusion Excel 框架了。

4. 阅读 Excel 文档

读取 Excel 文档是任何 Excel 库的首要功能。我们将看看如何使用 IronXL 和 Syncfusion Excel 框架读取 Excel 文件。

4.1 IronXL

IronXL 可在不使用 Microsoft.Office.Interop.Excel 的情况下读取 Excel 文档。在开始使用 IronXL 之前,有一个重要步骤要做 -- 我们总是要将 IronXL 导入到我们的程序文件中。因此,我们必须在程序顶端编写以下代码:

using IronXL;
using System.Linq;
using IronXL;
using System.Linq;
Imports IronXL
Imports System.Linq
VB   C#

接下来,请编写以下几行代码,以读取和编辑 Excel 文件,而无需编写多行代码,也无需掌握核心编程知识。

//Supported spreadsheet formats for reading include: XLSX, XLS, CSV and TSV
WorkBook workbook = WorkBook.Load("data.xlsx");
WorkSheet sheet = workbook.WorkSheets.First();
//Select cells easily in Excel notation and return the calculated value, date, text or formula
int cellValue = sheet ["A2"].IntValue;
// Read from Ranges of cells elegantly.
foreach (var cell in sheet ["A2:B10"])
{
    Console.WriteLine("Cell {0} has value '{1}'", cell.AddressString, cell.Text);
}
//Supported spreadsheet formats for reading include: XLSX, XLS, CSV and TSV
WorkBook workbook = WorkBook.Load("data.xlsx");
WorkSheet sheet = workbook.WorkSheets.First();
//Select cells easily in Excel notation and return the calculated value, date, text or formula
int cellValue = sheet ["A2"].IntValue;
// Read from Ranges of cells elegantly.
foreach (var cell in sheet ["A2:B10"])
{
    Console.WriteLine("Cell {0} has value '{1}'", cell.AddressString, cell.Text);
}
'Supported spreadsheet formats for reading include: XLSX, XLS, CSV and TSV
Dim workbook As WorkBook = WorkBook.Load("data.xlsx")
Dim sheet As WorkSheet = workbook.WorkSheets.First()
'Select cells easily in Excel notation and return the calculated value, date, text or formula
Dim cellValue As Integer = sheet ("A2").IntValue
' Read from Ranges of cells elegantly.
For Each cell In sheet ("A2:B10")
	Console.WriteLine("Cell {0} has value '{1}'", cell.AddressString, cell.Text)
Next cell
VB   C#

WorkBook.Load "函数有助于轻松加载工作簿。在给出的代码中,我们还可以看到单元格的值并将其打印到控制台。

4.2 同步融合 Excel

让我们看看如何使用 Syncfusion Excel 框架读取和编辑现有的 Excel 文件。首先,为了使用 Syncfusion Excel 框架,我们需要在项目中导入 Syncfusion。为此,我们必须在代码文件的顶部添加以下几行代码:

using Syncfusion.XlsIO;
using System.Drawing;
using Syncfusion.XlsIO;
using System.Drawing;
Imports Syncfusion.XlsIO
Imports System.Drawing
VB   C#

接下来,在项目中添加以下代码行,以便使用 Syncfusion Excel 框架读取和访问 Excel 文件。

//Create an instance of new ExcelEngine IApplication application
using (ExcelEngine excelEngine = new ExcelEngine())
{
    //Instantiate the Excel application object using IApplication application = excelengine excel
    IApplication application = excelEngine.Excel;

    //Set the Excelengine excel application defaultversion = excelversion
    application.DefaultVersion = ExcelVersion.Excel2016;

    //Load the existing Excel workbook into IWorkbook workbook = application. Workbooks
    IWorkbook workbook = application.Workbooks.Open("Sample.xlsx");

    //Get the first worksheet in the workbook into IWorksheet
    IWorksheet worksheet = workbook.Worksheets [0];

    //Assign some text in a cell
    worksheet.Range ["A3"].Text = "Hello World";

    //Save the Excel document
    workbook.SaveAs("Output.xlsx", Response, ExcelDownloadType.PromptDialog, ExcelHttpContentType.Excel2016);
}
//Create an instance of new ExcelEngine IApplication application
using (ExcelEngine excelEngine = new ExcelEngine())
{
    //Instantiate the Excel application object using IApplication application = excelengine excel
    IApplication application = excelEngine.Excel;

    //Set the Excelengine excel application defaultversion = excelversion
    application.DefaultVersion = ExcelVersion.Excel2016;

    //Load the existing Excel workbook into IWorkbook workbook = application. Workbooks
    IWorkbook workbook = application.Workbooks.Open("Sample.xlsx");

    //Get the first worksheet in the workbook into IWorksheet
    IWorksheet worksheet = workbook.Worksheets [0];

    //Assign some text in a cell
    worksheet.Range ["A3"].Text = "Hello World";

    //Save the Excel document
    workbook.SaveAs("Output.xlsx", Response, ExcelDownloadType.PromptDialog, ExcelHttpContentType.Excel2016);
}
'Create an instance of new ExcelEngine IApplication application
Using excelEngine As New ExcelEngine()
	'Instantiate the Excel application object using IApplication application = excelengine excel
	Dim application As IApplication = excelEngine.Excel

	'Set the Excelengine excel application defaultversion = excelversion
	application.DefaultVersion = ExcelVersion.Excel2016

	'Load the existing Excel workbook into IWorkbook workbook = application. Workbooks
	Dim workbook As IWorkbook = application.Workbooks.Open("Sample.xlsx")

	'Get the first worksheet in the workbook into IWorksheet
	Dim worksheet As IWorksheet = workbook.Worksheets (0)

	'Assign some text in a cell
	worksheet.Range ("A3").Text = "Hello World"

	'Save the Excel document
	workbook.SaveAs("Output.xlsx", Response, ExcelDownloadType.PromptDialog, ExcelHttpContentType.Excel2016)
End Using
VB   C#

我们可以看到,要在 Syncfusion Excel 中读取 Excel 文件,首先需要定义 Excel 版本。然后,我们就可以打开文件并对其进行编辑。要保存修改后的文件,我们必须再次根据 Excel 版本定义修改后文件的内容类型。在这种情况下,IronXL 非常容易理解和使用,因为我们不需要定义 Excel 版本,而且 IronXL 中的参数函数小巧易记。

5. 创建新的 Excel 文档

接下来,我们将比较创建新 Excel 文档和在创建的文档中填充值的方法。首先,我们来看看如何在 IronXL 中创建文档。

5.1 IronXL

IronXL 无需在服务器或 Interop 上安装 Excel。IronXL 提供了比Microsoft.Office.Interop.Excel更快、更直观的 API。我们已经知道,首先需要导入 IronXL 库,然后编写代码来创建 Excel 文件。以下代码用于在 IronXL 中创建 Excel 文件。

using IronXL;
//Create new Excel WorkBook document. 
WorkBook xlsxWorkbook = WorkBook.Create(ExcelFileFormat.XLSX);
xlsxWorkbook.Metadata.Author = "IronXL";
//Add a blank WorkSheet
WorkSheet xlsSheet = xlsxWorkbook.CreateWorkSheet("main_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
xlsxWorkbook.SaveAs("NewExcelFile.xlsx");
using IronXL;
//Create new Excel WorkBook document. 
WorkBook xlsxWorkbook = WorkBook.Create(ExcelFileFormat.XLSX);
xlsxWorkbook.Metadata.Author = "IronXL";
//Add a blank WorkSheet
WorkSheet xlsSheet = xlsxWorkbook.CreateWorkSheet("main_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
xlsxWorkbook.SaveAs("NewExcelFile.xlsx");
Imports IronXL
'Create new Excel WorkBook document. 
Private xlsxWorkbook As WorkBook = WorkBook.Create(ExcelFileFormat.XLSX)
xlsxWorkbook.Metadata.Author = "IronXL"
'Add a blank WorkSheet
Dim xlsSheet As WorkSheet = xlsxWorkbook.CreateWorkSheet("main_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
xlsxWorkbook.SaveAs("NewExcelFile.xlsx")
VB   C#

输出:

IronXL 输出

IronXL 输出

我们可以设置 Excel 文件的元数据。通过简单易用的函数,我们可以非常轻松地为单元格设置值和格式化单元格。我们使用 Style.BottomBorder.SetColor 函数来设置单元格底边的颜色。

5.2 同步融合 Excel

以下代码演示了如何创建新 Excel 文件并用 Syncfusion Excel 保存。添加以下代码并包含必要的命名空间:

using Syncfusion.XlsIO;
using Syncfusion.XlsIO;
Imports Syncfusion.XlsIO
VB   C#

现在添加以下代码行:

//New instance of ExcelEngine is created equivalent to launching Microsoft Excel with no workbooks open
//Instantiate the spreadsheet creation engine
using (ExcelEngine excelEngine = new ExcelEngine())
{
  //Instantiate the Excel application object
  IApplication application = excelEngine.Excel;

  //Assigns default application version
  application.DefaultVersion = ExcelVersion.Excel2013;

  //A new workbook is created equivalent to creating a new workbook in Excel
  //Create a workbook with 1 worksheet using workbook = application Workbooks create
  IWorkbook workbook = application.Workbooks.Create(1);

  //Access first worksheet from the workbook
  IWorksheet worksheet = workbook.Worksheets [0];

  //Adding text to a cell
  worksheet.Range ["A1"].Text = "Hello World";

  //Saving the workbook to disk in XLSX format
  workbook.SaveAs("Sample.xlsx");
}
//New instance of ExcelEngine is created equivalent to launching Microsoft Excel with no workbooks open
//Instantiate the spreadsheet creation engine
using (ExcelEngine excelEngine = new ExcelEngine())
{
  //Instantiate the Excel application object
  IApplication application = excelEngine.Excel;

  //Assigns default application version
  application.DefaultVersion = ExcelVersion.Excel2013;

  //A new workbook is created equivalent to creating a new workbook in Excel
  //Create a workbook with 1 worksheet using workbook = application Workbooks create
  IWorkbook workbook = application.Workbooks.Create(1);

  //Access first worksheet from the workbook
  IWorksheet worksheet = workbook.Worksheets [0];

  //Adding text to a cell
  worksheet.Range ["A1"].Text = "Hello World";

  //Saving the workbook to disk in XLSX format
  workbook.SaveAs("Sample.xlsx");
}
'New instance of ExcelEngine is created equivalent to launching Microsoft Excel with no workbooks open
'Instantiate the spreadsheet creation engine
Using excelEngine As New ExcelEngine()
  'Instantiate the Excel application object
  Dim application As IApplication = excelEngine.Excel

  'Assigns default application version
  application.DefaultVersion = ExcelVersion.Excel2013

  'A new workbook is created equivalent to creating a new workbook in Excel
  'Create a workbook with 1 worksheet using workbook = application Workbooks create
  Dim workbook As IWorkbook = application.Workbooks.Create(1)

  'Access first worksheet from the workbook
  Dim worksheet As IWorksheet = workbook.Worksheets (0)

  'Adding text to a cell
  worksheet.Range ("A1").Text = "Hello World"

  'Saving the workbook to disk in XLSX format
  workbook.SaveAs("Sample.xlsx")
End Using
VB   C#

上述代码创建了一个新的 IWorkbook 对象,然后使用 Workbooks.Create 在工作簿中创建了一个工作表。()函数。它通过 "cells "属性访问 Excel 工作表的单元格,最后使用 "SaveAs "保存文件。()功能。

6.导出 Excel 文件

接下来,我们将了解如何将 Excel 文件导出为其他数据格式。这是 Excel 库的一项重要功能,因为有时我们需要不同格式的数据来进行不同的处理--这就是为什么我们要看看哪个库能提供简单易行的解决方案。

6.1 IronXL

使用 IronXL,我们只需一行代码就能转换 Excel 文件。IronXL 可以将 Excel 数据导出为 CSV、JSON、XML、XLSX、XLS 等多种格式。

以下代码有助于使用 IronXL 将 Excel 文件转换为不同格式。

//Export to many formats with fluent saving
xlsxWorkbook.SaveAs("NewExcelFile.xls");
xlsxWorkbook.SaveAs("NewExcelFile.xlsx");
xlsxWorkbook.SaveAsCsv("NewExcelFile.csv");
xlsxWorkbook.SaveAsJson("NewExcelFile.json");
xlsxWorkbook.SaveAsXml("NewExcelFile.xml");
//Export to many formats with fluent saving
xlsxWorkbook.SaveAs("NewExcelFile.xls");
xlsxWorkbook.SaveAs("NewExcelFile.xlsx");
xlsxWorkbook.SaveAsCsv("NewExcelFile.csv");
xlsxWorkbook.SaveAsJson("NewExcelFile.json");
xlsxWorkbook.SaveAsXml("NewExcelFile.xml");
'Export to many formats with fluent saving
xlsxWorkbook.SaveAs("NewExcelFile.xls")
xlsxWorkbook.SaveAs("NewExcelFile.xlsx")
xlsxWorkbook.SaveAsCsv("NewExcelFile.csv")
xlsxWorkbook.SaveAsJson("NewExcelFile.json")
xlsxWorkbook.SaveAsXml("NewExcelFile.xml")
VB   C#

在上面的代码中,我们可以看到,只需一行代码,我们就可以非常轻松地导出 Excel 文件。不过,我们需要先打开或创建 Excel 文件,上文已经介绍了如何使用 IronXL 打开和创建 Excel 文件。

6.2 同步融合 Excel

Syncfusion Excel 框架可将 Excel 文件转换为 PDF 和 JSON 格式。我们无需安装额外的库就能将 Excel 文件转换为 JSON 格式。以下是如何将打开的 Excel 文件转换为 JSON 文件的代码。

//Saves the workbook to a JSON file, as schema by default
workbook.SaveAsJson("Excel-Workbook-To-JSON-as-schema-default.json");

//Saves the workbook to a JSON file as schema
workbook.SaveAsJson("Excel-Workbook-To-JSON-as-schema.json", true);
//Saves the workbook to a JSON file, as schema by default
workbook.SaveAsJson("Excel-Workbook-To-JSON-as-schema-default.json");

//Saves the workbook to a JSON file as schema
workbook.SaveAsJson("Excel-Workbook-To-JSON-as-schema.json", true);
'Saves the workbook to a JSON file, as schema by default
workbook.SaveAsJson("Excel-Workbook-To-JSON-as-schema-default.json")

'Saves the workbook to a JSON file as schema
workbook.SaveAsJson("Excel-Workbook-To-JSON-as-schema.json", True)
VB   C#

要将典型的 Excel 文档转换为 PDF 文件,我们需要安装一个额外的库,为转换提供支持。Excel-to-ODS 可将 Excel 文件保存为 ODS 格式,以便在 OpenOffice 和 Google Sheets 等各种应用程序中使用。Excel-to-HTML 可将 Excel 工作簿或工作表动态渲染为 HTML 文件。

7.保护 Excel 文件

保护是 Microsoft Excel 最重要的功能。它可以让你控制谁可以编辑和打开文件。受密码保护的 Excel 文件非常重要,因为它们可能存储了重要数据。让我们看看如何使用 Excel 库保护 Excel 文件。

7.1 IronXL

使用 IronXL,我们只需一行代码就能保护 Excel 文件。下面的代码演示了如何打开和保护 Excel 文件。

using IronXL;

WorkBook workbook = WorkBook.Load("test.xlsx");
WorkSheet worksheet = workbook.DefaultWorkSheet;

//This is how we can protect the worksheet by setting the password to it
//Users will then need to know this password to edit the password protected Excel files worksheet in Excel.
worksheet.ProtectSheet("password");
workbook.Save();

//This is how to unprotect the worksheet and remove any password locks 
//It works even if you do not know the password!
worksheet.UnprotectSheet();
workbook.Save();
using IronXL;

WorkBook workbook = WorkBook.Load("test.xlsx");
WorkSheet worksheet = workbook.DefaultWorkSheet;

//This is how we can protect the worksheet by setting the password to it
//Users will then need to know this password to edit the password protected Excel files worksheet in Excel.
worksheet.ProtectSheet("password");
workbook.Save();

//This is how to unprotect the worksheet and remove any password locks 
//It works even if you do not know the password!
worksheet.UnprotectSheet();
workbook.Save();
Imports IronXL

Private workbook As WorkBook = WorkBook.Load("test.xlsx")
Private worksheet As WorkSheet = workbook.DefaultWorkSheet

'This is how we can protect the worksheet by setting the password to it
'Users will then need to know this password to edit the password protected Excel files worksheet in Excel.
worksheet.ProtectSheet("password")
workbook.Save()

'This is how to unprotect the worksheet and remove any password locks 
'It works even if you do not know the password!
worksheet.UnprotectSheet()
workbook.Save()
VB   C#

保护表()函数使用户可以对 Excel 文件进行加密。要解除对工作表的保护,我们可以使用 `UnprotectSheet()函数。即使您不知道密码,该函数也会删除所有密码。

7.2 同步融合 Excel

我们可以使用 Syncfusion Excel 框架保护 Excel 文件。以下代码可让我们创建并保护 Excel 文件。

private void ProtectWorkbook()
{
    using (ExcelEngine excelEngine = new ExcelEngine())
    {
        //Instantiate the application object
        IApplication application = excelEngine.Excel;

        //Create a workbook
        IWorkbook workbook = application.Workbooks.Create(1);

        //Protect the workbook specifying a password with Boolean attributes for structure and windows protection
        bool isProtectWindow = true;
        bool isProtectContent = true;
        workbook.Protect(isProtectWindow, isProtectContent, "password");

        //Save the Excel file
        workbook.SaveAs(@"d:\test\XlsIOOutput_ProtectedWorkbook.xlsx");
    }
}
private void ProtectWorkbook()
{
    using (ExcelEngine excelEngine = new ExcelEngine())
    {
        //Instantiate the application object
        IApplication application = excelEngine.Excel;

        //Create a workbook
        IWorkbook workbook = application.Workbooks.Create(1);

        //Protect the workbook specifying a password with Boolean attributes for structure and windows protection
        bool isProtectWindow = true;
        bool isProtectContent = true;
        workbook.Protect(isProtectWindow, isProtectContent, "password");

        //Save the Excel file
        workbook.SaveAs(@"d:\test\XlsIOOutput_ProtectedWorkbook.xlsx");
    }
}
Private Sub ProtectWorkbook()
	Using excelEngine As New ExcelEngine()
		'Instantiate the application object
		Dim application As IApplication = excelEngine.Excel

		'Create a workbook
		Dim workbook As IWorkbook = application.Workbooks.Create(1)

		'Protect the workbook specifying a password with Boolean attributes for structure and windows protection
		Dim isProtectWindow As Boolean = True
		Dim isProtectContent As Boolean = True
		workbook.Protect(isProtectWindow, isProtectContent, "password")

		'Save the Excel file
		workbook.SaveAs("d:\test\XlsIOOutput_ProtectedWorkbook.xlsx")
	End Using
End Sub
VB   C#

我们使用 "保护() 函数来加密 Excel 文件。如果只需要保护工作表,或者还需要保护 Excel 文件的内容,我们需要向函数传递三个参数。第三个参数是要设置的密码。

8.许可

8.1 IronXL

IronXL 的开发完全免费。你可以尝试开发它的每一个方面。但是,免费开发版本会有水印。您也可以免费试用生产版本。您可以激活 免费试用 生产,无需支付任何费用。如果您选择购买 IronXL,价格方案如下:

简装版 ($liteLicense)

如果您是单个开发人员,希望在自己的项目中使用 IronXL,可以选择精简版。这将是您的最佳选择。

IronXL Lite

IronXL Lite

专业版 ($专业许可证)

如果你的公司在全球有多个分支机构,那么专业版是最佳选择。该版本可同时支持 10 个地点、10 个开发人员和 10 个项目。

IronXL 专业版

铁XL专业

无限版 ($unlimitedLicense`(无限许可证)

该定价方案支持无限开发人员、无限地点和无限项目,只需一次付款即可终身使用。如果您希望在多个项目中使用 IronXL,这是最佳选择。

IronXL 无限

铁XL无限

IronXL 还支持版税分配,并为您提供产品支持和更新。

版税分配

版权分配

IronXL's 许可页面 包含有关定价和使用权的更多详细信息。

8.2 Syncfusion Excel 库

Syncfusion Excel 库还提供免费试用。如果你想购买 Syncfusion Excel,你可以以 395 美元的价格购买,一个团队最多可有 5 名开发人员。Syncfusion 还提供以下额外许可 由 10 名或更多开发人员组成的团队和特别 无限许可证 可用于单个项目或整个公司。

同步融合

同步融合

9.结论

这两个库都提供了有效的功能。但是,从更大的角度来看,IronXL 更方便、更易用。它的功能小巧易记。在 IronXL 的帮助下,只需一行代码就能完成大量编辑和格式化工作。代码流程虽然复杂,但初学者也能轻松理解。你无需了解或理解 IronXL 的工作原理。无需为不同平台安装单独的库。只需安装一次,就能完成所有操作。

如上所述,Syncfusion Excel 拥有众多功能。在 Syncfusion Excel 的帮助下,我们可以进行多种格式化和转换。我们可以创建新的 Excel 文档、修改已有的 Excel 文件、进行多种格式化和加密。我们必须安装一个单独的库来执行转换。

IronXL 有多种定价方案。您可以购买最适合自己需求的计划。例如,如果您是唯一的开发人员,需要将 IronXL 用于项目的商业用途,您只需一次性支付 $749 即可激活它。与 Syncfusion 相比,IronXL 的性价比要高得多。Syncfusion 要求您仅为一名开发人员和一个项目购买一年的库,价格仅为 999 美元。因此,IronXL 比 Syncfusion Excel 框架便宜得多,而且能提供更好的选择。

总之,IronXL 是比 Syncfusion Excel 框架更好的选择。正如我们在以上段落中所看到的,IronXL 的函数非常简单,使用起来非常容易,我们只需编写一行代码就可以完成许多格式化工作。但是,在 Syncfusion Excel 框架中,我们需要编写多行代码来定义许多项目,而这些项目在 IronXL 中已经在后台定义好了,用户无需再花时间定义多个参数和变量。此外,IronXL 还更便宜,而且有更好的许可选项。Iron Software 目前推出了一项优惠活动,用户只需花两个软件包的价格即可购买五个软件包。这意味着您可以 购买五套 Iron 软件 只适用于 $suiteLiteLicense

< 前一页
IronXL 与葡萄城 Excel Viewer 之间的比较
下一步 >
IronXL与Spire XLS的比较

准备开始了吗? 版本: 2024.9 刚刚发布

免费NuGet下载 总下载量: 988,189 查看许可证 >