跳至页脚内容
与其他组件比较

IronXL 和 GrapeCity Excel 查看器的比较

在.NET 环境下编程时使用 Excel 数据可能会导致一系列问题,尤其是在互操作性方面。

Excel 是世界上使用最广泛的电子表格程序。 用户包括开发人员和普通大众,但开发人员更有可能对这些内容感兴趣。 最初,开发人员将 Excel 集成到各种应用程序中的选择并不多。不过,Office 套件中包含了 VBA(Visual Basic for Applications,应用程序的 Visual Basic),可以让您根据自己的需要编辑任何 Office 产品。

开发人员使用 Excel 中的 VBA 自定义与 XLSX 电子表格及其数据的交互以及其可视化功能。

什么是 GrapeCity Documents for Excel?

GrapeCity Documents for Excel .NET Edition 是一款全新的高性能、小体积电子表格组件,可用于服务器或桌面应用程序。 它提供了丰富的 API,用于创建、操作、转换和共享与 Microsoft Excel 兼容的电子表格。 您还可以在 Angular、React 或 Vue 等几乎所有应用程序或平台上使用它来创建自定义样式。

它具有无缝嵌入式 BI 平台 wyn,可在任何内部或商业应用程序中使用交互式仪表盘、调度和分发工具。

GrapeCity 的嵌入式 BI 平台提供了无限的高速可视化数据探索,使日常用户能够以数据为导向,使用 BI 临时报告和交互式仪表板轻松报告具有大量数据的解决方案。

GcExcel .NET 兼容多种平台,包括 .NET Framework、.NET Core 和 Mono,是满足您所有电子表格需求的理想选择。

GcExcel .NET 的最大优点是其基于接口的 API 是以 Excel 的文档对象范例为模型的。 因此,用户可以随时导入、计算、查询、生成和导出任何电子表格场景。此外,还可以在导入或生成的电子表格中引用综合报告、排序和过滤表、排序和过滤透视表、添加图表、火花线、条件格式和仪表板报告等。

GrapeCity Documents for Excel 能为您提供什么?

  • 允许在服务器上创建、操作和序列化电子表格。
  • 低内存占用。
  • 使用强大的计算引擎执行复杂的计算。
  • 高速直观的文档; 嵌入式商业智能。
  • 提供完整的报告解决方案。
  • 让您以高速度完全控制您的文档。
  • 生成各种格式的输出,包括 .xlsx 和 ssjson。
  • 支持多个平台的 .NET Framework、.NET Core 和 Mono。
  • 兼容 WinForms、WPF、ASP.NET 和其他环境。

GrapeCity Excel - 突出功能

最新发布的 14.1 版具有许多令人兴奋的新功能。

  • 提高效率的轻量级电子表格 API 架构

GcExcel .NET 采用轻量级 API 架构,可用于生成、加载、编辑、保存和转换电子表格,通过提高整体效率,用户可以节省大量时间、存储内存和精力。

  • 不依赖 MS Excel.

为了使用 GcExcel .NET,用户无需安装 MS Office Suite 或在系统上访问 MS Excel。

  • 使用 SpreadJS DSheets 创建交互式体验

GcExcel .NET 可与电子表格一起使用,带来完全交互式和用户友好的电子表格体验。

  • 使用 Excel 电子表格将应用程序部署到云中

使用 GcExcel .NET,您可以应用基于云的部署,并在 Azure 和 AWS Lambda 上部署应用程序。

  • 形状和图片

通过电子表格 API,您可以在工作表的单元格中插入和自定义形状和图片,应用格式化、渐变填充、配置文本、插入超链接、设置形状的调整点、在工作表中分组/解组形状和图片,以及确定图片的位置和大小。

什么是 IronXL?

IronXL.Excel 是一个 C# 库,能让阅读和编辑 Microsoft Excel 文档变得更容易。 IronXL Excel 是一个 .NET 软件库,可以读取各种电子表格格式。 翻译不需要安装 Microsoft Excel,也不依赖 Interop。

IronXL for .NET 是一个用户友好的 C# API,可让您在 .NET 中以极快的速度读取、编辑和生成 Excel 文件。 IronXL 支持 .NET Core、.NET Framework、Xamarin、Mobile、Linux、macOS 和 Azure。

IronXL 是适用于 .NET Core 和 .NET Framework 的 C# Excel 电子表格库。

IronXL功能集

  • 从 XLS/XLSX/CSV/TSV 加载、读取和编辑数据
  • 保存和导出 - 至 XLS/XLSX/CSV/TSV/JSON
  • System.Data 对象 - 将 Excel 电子表格作为 System.Data.DataSet 和 System.Data.DataTable 对象处理。
  • 公式 - 可使用 Excel 公式。 每次编辑工作表时公式都会重新计算。
  • 范围 - 易于使用的工作表 ["A1:B10"] 语法。 直观地组合和创建范围。
  • 排序 - 对范围、列和行进行排序。
  • 样式 - 单元视觉样式、字体、大小、背景图案、边框、对齐方式和数字格式。

为 Excel 安装 GrapeCity 文档

要在 .NET Core、ASP.NET Core 或 .NET Framework 应用程序(任何支持 .NET Standard 2.0 的目标)中使用 GcExcel .NET,请使用以下步骤在应用程序中安装 NuGet 软件包:

查找并安装 GrapeCity.Documents.Excel NuGet 软件包:

1.从 "解决方案资源管理器 "中依赖项或项目的上下文菜单中选择 "管理 NuGet 包"。 2.从 "浏览 "选项卡的 "软件包源 "下拉菜单中选择 nuget.org。 3.在浏览选项卡中,在顶部的搜索文本框中输入 "grapecity.documents "或 "GrapeCity.Documents",搜索软件包 "GrapeCity.Documents.Excel"。

NuGet 包管理器对话框

4.单击 InstallGrapeCity.Documents.Excel 软件包及其依赖项安装到项目中。 安装完成后,请确保检查解决方案资源管理器中的 NuGet 文件夹,并确认 GrapeCity.Documents.Excel 软件包是否已添加到项目依赖关系中。

NuGet文件夹

IronXL C# 库安装

您可以使用以下方法下载和安装IronXL库:

  • 使用 Visual Studio 和 NuGet 软件包。
  • 直接下载 NuGet 软件包。
  • 使用 DLL 手动安装。

让我们仔细看一下每个方法。

使用 Visual Studio 和 NuGet 软件包

Visual Studio 提供 NuGet 包管理器以便在您的项目中安装 NuGet 包。 您可以通过项目菜单或通过右键点击解决方案资源管理器中的项目访问它。

选择
  • 接下来,从 "浏览 "选项卡 -> 搜索 IronXL.Excel -> 安装
搜索 IronXL
  • 我们完成了。
Grapecity Excel Viewer Alternatives 5 related to 使用 Visual Studio 和 NuGet 软件包

使用 NuGet 包管理器控制台

下载和安装 Microsoft.Office.Interop.Excel C# 库的另一种方法是利用以下步骤,通过开发人员命令提示符安装 NuGet 软件包。

  • 打开 Developer 命令提示符--通常可在 Visual Studio 文件夹中找到。
  • 键入以下命令:
Install-Package Microsoft.Office.Interop.Excel
  • 按回车键。
  • 这将下载并安装软件包。
  • 重新加载您的 Visual Studio 项目并开始使用。

添加必要的使用指令

1.在解决方案资源管理器中,右键单击 Program.cs 文件,然后单击查看代码。

  1. 将以下using指令添加到代码文件的顶部:
using Excel = Microsoft.Office.Interop.Excel;
using Excel = Microsoft.Office.Interop.Excel;
Imports Excel = Microsoft.Office.Interop.Excel
$vbLabelText   $csharpLabel

创建 Excel 工作簿和工作表

工作簿是包含多行多列工作表的 Excel 文件。 两个库都可以创建新的 Excel 工作簿和工作表。 让我们逐步了解一下代码。

使用 IronXL.Excel 创建 Excel 文件

使用IronXL创建新的Excel工作簿是再简单不过了。 只需一行代码! 是的,真的。 在Program.cs文件中的static void main函数中添加以下代码:

WorkBook workbook = WorkBook.Create(ExcelFileFormat.XLSX);
WorkBook workbook = WorkBook.Create(ExcelFileFormat.XLSX);
Dim workbook As WorkBook = WorkBook.Create(ExcelFileFormat.XLSX)
$vbLabelText   $csharpLabel

使用IronXL可以创建XLS(旧版Excel文件)和XLSX(当前和新版文件)两种文件格式。

而且,创建默认工作表更简单:

var worksheet = workbook.CreateWorkSheet("IronXL Features");
var worksheet = workbook.CreateWorkSheet("IronXL Features");
Dim worksheet = workbook.CreateWorkSheet("IronXL Features")
$vbLabelText   $csharpLabel

现在,您可以利用工作表变量来设置单元格值,几乎可以做任何 Excel 文件能做的事情。

使用服务器端 Excel API GrapeCity Excel 创建 Excel 文件

GrapeCity Documents for Excel(或 GcExcel)是一个服务器端 Excel API,允许您在任何 .NET Standard 应用程序中创建、加载、保存、转换、计算、格式化、解析和导出电子表格。 由于 Windows、Linux 和 Mac 完全支持 .NET5,GcExcel 可以部署到 Azure,而无需依赖任何 Excel。

GcExcel 允许您创建和生成服务器端 Excel 电子表格,而无需使用 MS Excel。

  • 在函数中使用 GcExcel 创建工作簿。
  • 将工作簿转换为 JSON 后返回客户端。

在本例中,我们只是要制作一个 BidTracker.xlsx 电子表格。 本示例展示了可使用 GcExcel 编程的额外服务器端功能。

[HttpGet("{caseName}")]
public IActionResult GetSSJsonFromUseCase(string caseName)
{
    Workbook workbook = CreateWorkbookByCaseName(caseName);
    var ssjson = workbook.ToJson();
    return Ok(ssjson);
}

private Workbook CreateWorkbookByCaseName(string caseName)
{
    switch (caseName)
    {
        case "BidTracker":
            return GetBidTracker();
        default:
            break;
    }

    return new Workbook();
}
[HttpGet("{caseName}")]
public IActionResult GetSSJsonFromUseCase(string caseName)
{
    Workbook workbook = CreateWorkbookByCaseName(caseName);
    var ssjson = workbook.ToJson();
    return Ok(ssjson);
}

private Workbook CreateWorkbookByCaseName(string caseName)
{
    switch (caseName)
    {
        case "BidTracker":
            return GetBidTracker();
        default:
            break;
    }

    return new Workbook();
}
<HttpGet("{caseName}")>
Public Function GetSSJsonFromUseCase(ByVal caseName As String) As IActionResult
	Dim workbook As Workbook = CreateWorkbookByCaseName(caseName)
	Dim ssjson = workbook.ToJson()
	Return Ok(ssjson)
End Function

Private Function CreateWorkbookByCaseName(ByVal caseName As String) As Workbook
	Select Case caseName
		Case "BidTracker"
			Return GetBidTracker()
		Case Else
	End Select

	Return New Workbook()
End Function
$vbLabelText   $csharpLabel

编辑 Excel 文件

开发人员在开始用 C# 修改和编辑 Excel 文件时必须小心谨慎,因为一个失误可能很容易改变整个文档。 能够依赖简单高效的代码行有助于减少出错的危险,并使我们更容易以编程方式更新或删除 Excel 文件。 今天,我们将利用经过测试的函数,介绍在 C# 中准确、快速地编辑 Excel 文件的必要步骤。

使用 GrapeCity Excel 编辑 Excel 文件

让我们开始使用 GcExcel 来解决这些问题。

交给您的电子表格是这样的:

Grapecity Excel Viewer Alternatives 6 related to 使用 GrapeCity Excel 编辑 Excel 文件

首先,我们要对表格进行格式化:

  • 更改工作表标题和总收入单元格的字体属性。
  • 更改表格、表格列和单元格样式。

让我们来看看如何使用 GcExcel 实现这一目标。

步骤 1:加载现有 Excel 电子表格

编写以下代码,将现有电子表格加载到 GcExcel 工作簿中:

Workbook workbook = new Workbook();
workbook.Open("EventBudget.xlsx");
Workbook workbook = new Workbook();
workbook.Open("EventBudget.xlsx");
Dim workbook As New Workbook()
workbook.Open("EventBudget.xlsx")
$vbLabelText   $csharpLabel

步骤 2:获取要修改的工作表

IWorksheet worksheet = workbook.ActiveWorksheet;
IWorksheet worksheet = workbook.ActiveWorksheet;
Dim worksheet As IWorksheet = workbook.ActiveWorksheet
$vbLabelText   $csharpLabel

步骤 3:修改标题的字体属性

更改 B2(字体大小)和 E4(设置为粗体)单元格的字体属性:

// Change range B2's font size.
worksheet.GetRange("B2").Font.Size = 22;

// Change range E4's font style to bold.
worksheet.GetRange("E4").Font.Bold = true;
// Change range B2's font size.
worksheet.GetRange("B2").Font.Size = 22;

// Change range E4's font style to bold.
worksheet.GetRange("E4").Font.Bold = true;
' Change range B2's font size.
worksheet.GetRange("B2").Font.Size = 22

' Change range E4's font style to bold.
worksheet.GetRange("E4").Font.Bold = True
$vbLabelText   $csharpLabel

步骤 4:修改表格样式

将四个表格的样式设置为内置样式。

worksheet.Tables["tblAdmissions"].TableStyle = workbook.TableStyles["TableStyleLight10"];
worksheet.Tables["tblAds"].TableStyle = workbook.TableStyles["TableStyleLight10"];
worksheet.Tables["tblVendors"].TableStyle = workbook.TableStyles["TableStyleLight10"];
worksheet.Tables["tblItems"].TableStyle = workbook.TableStyles["TableStyleLight10"];
worksheet.Tables["tblAdmissions"].TableStyle = workbook.TableStyles["TableStyleLight10"];
worksheet.Tables["tblAds"].TableStyle = workbook.TableStyles["TableStyleLight10"];
worksheet.Tables["tblVendors"].TableStyle = workbook.TableStyles["TableStyleLight10"];
worksheet.Tables["tblItems"].TableStyle = workbook.TableStyles["TableStyleLight10"];
worksheet.Tables("tblAdmissions").TableStyle = workbook.TableStyles("TableStyleLight10")
worksheet.Tables("tblAds").TableStyle = workbook.TableStyles("TableStyleLight10")
worksheet.Tables("tblVendors").TableStyle = workbook.TableStyles("TableStyleLight10")
worksheet.Tables("tblItems").TableStyle = workbook.TableStyles("TableStyleLight10")
$vbLabelText   $csharpLabel

步骤 5:修改单元格区域样式

修改总收入单元格的单元格样式。 范围的 Interior 属性可帮助您设置 ThemeColorTintAndShade 属性。 您还可以使用 Font 属性更改整个范围的字体。 此外,该代码还可以设置单元格范围的边界。

由于电子表格显示的是预算数据,因此要将单元格区域的数字格式设置为货币格式。

// Modify range F4:G5's cell style.
worksheet.GetRange("F4:G5").Interior.ThemeColor = ThemeColor.Light1;
worksheet.GetRange("F4:G5").Interior.TintAndShade = -0.15;
worksheet.GetRange("F4:G5").Font.ThemeFont = ThemeFont.Major;
worksheet.GetRange("F4:G5").Font.Size = 12;
worksheet.GetRange("F4:G5").Borders[BordersIndex.InsideHorizontal].LineStyle = BorderLineStyle.None;
worksheet.GetRange("F5:G5").NumberFormat = "$#,##0.00";
// Modify range F4:G5's cell style.
worksheet.GetRange("F4:G5").Interior.ThemeColor = ThemeColor.Light1;
worksheet.GetRange("F4:G5").Interior.TintAndShade = -0.15;
worksheet.GetRange("F4:G5").Font.ThemeFont = ThemeFont.Major;
worksheet.GetRange("F4:G5").Font.Size = 12;
worksheet.GetRange("F4:G5").Borders[BordersIndex.InsideHorizontal].LineStyle = BorderLineStyle.None;
worksheet.GetRange("F5:G5").NumberFormat = "$#,##0.00";
' Modify range F4:G5's cell style.
worksheet.GetRange("F4:G5").Interior.ThemeColor = ThemeColor.Light1
worksheet.GetRange("F4:G5").Interior.TintAndShade = -0.15
worksheet.GetRange("F4:G5").Font.ThemeFont = ThemeFont.Major
worksheet.GetRange("F4:G5").Font.Size = 12
worksheet.GetRange("F4:G5").Borders(BordersIndex.InsideHorizontal).LineStyle = BorderLineStyle.None
worksheet.GetRange("F5:G5").NumberFormat = "$#,##0.00"
$vbLabelText   $csharpLabel

步骤 6:修改表格列样式

由于表格列范围不同,请在表格的不同列范围上设置 ThemeColor, TintAndShade 属性和 NumberFormat

worksheet.GetRange("F8:G11, F15:G18, F22:G25, F29:G33").Interior.ThemeColor = ThemeColor.Light1;
worksheet.GetRange("F8:G11, F15:G18, F22:G25, F29:G33").Interior.TintAndShade = -0.15;
worksheet.GetRange("E8:G11, E15:G18, E22:G25, E29:G33").NumberFormat = "$#,##0.00";
worksheet.GetRange("F8:G11, F15:G18, F22:G25, F29:G33").Interior.ThemeColor = ThemeColor.Light1;
worksheet.GetRange("F8:G11, F15:G18, F22:G25, F29:G33").Interior.TintAndShade = -0.15;
worksheet.GetRange("E8:G11, E15:G18, E22:G25, E29:G33").NumberFormat = "$#,##0.00";
worksheet.GetRange("F8:G11, F15:G18, F22:G25, F29:G33").Interior.ThemeColor = ThemeColor.Light1
worksheet.GetRange("F8:G11, F15:G18, F22:G25, F29:G33").Interior.TintAndShade = -0.15
worksheet.GetRange("E8:G11, E15:G18, E22:G25, E29:G33").NumberFormat = "$#,##0.00"
$vbLabelText   $csharpLabel

步骤 7:保存 Excel 文件

// Save to an Excel file
workbook.Save("EventBudget.xlsx");
// Save to an Excel file
workbook.Save("EventBudget.xlsx");
' Save to an Excel file
workbook.Save("EventBudget.xlsx")
$vbLabelText   $csharpLabel

祝贺您! 您完全改变了文档的格式。 运行应用程序,您的 Excel 电子表格将显示如下内容:

在 Java 应用程序中创建、修改和保存 Excel 电子表格

使用 IronXL.Excel 编辑 Excel 文件

安装好 IronXL 后,让我们来谈谈用它编辑 Excel 文件的过程。

编辑特定单元格的值

首先,我们来看看如何更改 Excel 电子表格中某些单元格的值。

为此,我们需要导入需要修改的 Excel 电子表格并访问其工作表。 然后,我们可以进行如下修改。

using IronXL;

static void Main(string[] args)
{
    // Import Excel Spreadsheet
    WorkBook wb = WorkBook.Load("sample.xlsx");

    // Access specific worksheet
    WorkSheet ws = wb.GetWorkSheet("Sheet1");

    // Access specific cell and modify its value
    ws.Rows[3].Columns[1].Value = "New Value";

    // Save changes
    wb.SaveAs("sample.xlsx");
}
using IronXL;

static void Main(string[] args)
{
    // Import Excel Spreadsheet
    WorkBook wb = WorkBook.Load("sample.xlsx");

    // Access specific worksheet
    WorkSheet ws = wb.GetWorkSheet("Sheet1");

    // Access specific cell and modify its value
    ws.Rows[3].Columns[1].Value = "New Value";

    // Save changes
    wb.SaveAs("sample.xlsx");
}
Imports IronXL

Shared Sub Main(ByVal args() As String)
	' Import Excel Spreadsheet
	Dim wb As WorkBook = WorkBook.Load("sample.xlsx")

	' Access specific worksheet
	Dim ws As WorkSheet = wb.GetWorkSheet("Sheet1")

	' Access specific cell and modify its value
	ws.Rows(3).Columns(1).Value = "New Value"

	' Save changes
	wb.SaveAs("sample.xlsx")
End Sub
$vbLabelText   $csharpLabel

以下是 Excel 电子表格 sample.xlsx 的前后截图:

前
后

我们可以看到修改Excel表格中的值是多么简单。

如有需要,还可以通过单元格地址编辑特定单元格的值:

// Alternative way to access specific cell and apply changes
ws["B4"].Value = "New Value";
// Alternative way to access specific cell and apply changes
ws["B4"].Value = "New Value";
' Alternative way to access specific cell and apply changes
ws("B4").Value = "New Value"
$vbLabelText   $csharpLabel

编辑全行值

用静态值编辑 Excel 电子表格的整行值非常简单。

using IronXL;

static void Main(string[] args)
{    
    WorkBook wb = WorkBook.Load("sample.xlsx");
    WorkSheet ws = wb.GetWorkSheet("Sheet1");

    // Set full row value
    ws.Rows[3].Value = "New Value";

    wb.SaveAs("sample.xlsx");
}
using IronXL;

static void Main(string[] args)
{    
    WorkBook wb = WorkBook.Load("sample.xlsx");
    WorkSheet ws = wb.GetWorkSheet("Sheet1");

    // Set full row value
    ws.Rows[3].Value = "New Value";

    wb.SaveAs("sample.xlsx");
}
Imports IronXL

Shared Sub Main(ByVal args() As String)
	Dim wb As WorkBook = WorkBook.Load("sample.xlsx")
	Dim ws As WorkSheet = wb.GetWorkSheet("Sheet1")

	' Set full row value
	ws.Rows(3).Value = "New Value"

	wb.SaveAs("sample.xlsx")
End Sub
$vbLabelText   $csharpLabel

请参见下面的 sample.xlsx 截图:

前
后

为此,我们还可以使用 range 函数编辑行中特定范围的值:

// Modify specific range within a row
ws["A3:E3"].Value = "New Value";
// Modify specific range within a row
ws["A3:E3"].Value = "New Value";
' Modify specific range within a row
ws("A3:E3").Value = "New Value"
$vbLabelText   $csharpLabel

编辑全列值

与上述方法相同,我们可以用一个值轻松编辑 Excel 电子表格的整列。

using IronXL;

static void Main(string[] args)
{
    WorkBook wb = WorkBook.Load("sample.xlsx");
    WorkSheet ws = wb.GetWorkSheet("Sheet1");

    // Set full column value
    ws.Columns[1].Value = "New Value";

    wb.SaveAs("sample.xlsx");
}
using IronXL;

static void Main(string[] args)
{
    WorkBook wb = WorkBook.Load("sample.xlsx");
    WorkSheet ws = wb.GetWorkSheet("Sheet1");

    // Set full column value
    ws.Columns[1].Value = "New Value";

    wb.SaveAs("sample.xlsx");
}
Imports IronXL

Shared Sub Main(ByVal args() As String)
	Dim wb As WorkBook = WorkBook.Load("sample.xlsx")
	Dim ws As WorkSheet = wb.GetWorkSheet("Sheet1")

	' Set full column value
	ws.Columns(1).Value = "New Value"

	wb.SaveAs("sample.xlsx")
End Sub
$vbLabelText   $csharpLabel

这将生成我们的 sample.xlsx 电子表格:

后

使用动态值编辑全行

使用 IronXL,还可以编辑具有动态值的特定行。 这意味着我们可以通过为每个单元格分配动态值来编辑整行。 让我们来看看这个例子:

using IronXL;

static void Main(string[] args)
{
    WorkBook wb = WorkBook.Load("sample.xlsx");
    WorkSheet ws = wb.GetWorkSheet("Sheet1");

    for (int i = 0; i < ws.Columns.Count(); i++)
    {
        // Set cell value dynamically based on column index
        ws.Rows[3].Columns[i].Value = "New Value " + i.ToString();
    }

    wb.SaveAs("sample.xlsx");
}
using IronXL;

static void Main(string[] args)
{
    WorkBook wb = WorkBook.Load("sample.xlsx");
    WorkSheet ws = wb.GetWorkSheet("Sheet1");

    for (int i = 0; i < ws.Columns.Count(); i++)
    {
        // Set cell value dynamically based on column index
        ws.Rows[3].Columns[i].Value = "New Value " + i.ToString();
    }

    wb.SaveAs("sample.xlsx");
}
Imports IronXL

Shared Sub Main(ByVal args() As String)
	Dim wb As WorkBook = WorkBook.Load("sample.xlsx")
	Dim ws As WorkSheet = wb.GetWorkSheet("Sheet1")

	For i As Integer = 0 To ws.Columns.Count() - 1
		' Set cell value dynamically based on column index
		ws.Rows(3).Columns(i).Value = "New Value " & i.ToString()
	Next i

	wb.SaveAs("sample.xlsx")
End Sub
$vbLabelText   $csharpLabel

在下表中,我们可以看到此次输出的 Excel 电子表格 sample.xlsx 的截图:

前
后

使用动态值编辑全列

还可以轻松编辑具有动态值的特定列。

using IronXL;

static void Main(string[] args)
{
    WorkBook wb = WorkBook.Load("sample.xlsx");
    WorkSheet ws = wb.GetWorkSheet("Sheet1");

    for (int i = 0; i < ws.Rows.Count(); i++)
    {
        // Skip header row
        if (i == 0) continue;

        // Set cell value dynamically based on row index
        ws.Rows[i].Columns[1].Value = "New Value " + i.ToString();
    }

    wb.SaveAs("sample.xlsx");
}
using IronXL;

static void Main(string[] args)
{
    WorkBook wb = WorkBook.Load("sample.xlsx");
    WorkSheet ws = wb.GetWorkSheet("Sheet1");

    for (int i = 0; i < ws.Rows.Count(); i++)
    {
        // Skip header row
        if (i == 0) continue;

        // Set cell value dynamically based on row index
        ws.Rows[i].Columns[1].Value = "New Value " + i.ToString();
    }

    wb.SaveAs("sample.xlsx");
}
Imports IronXL

Shared Sub Main(ByVal args() As String)
	Dim wb As WorkBook = WorkBook.Load("sample.xlsx")
	Dim ws As WorkSheet = wb.GetWorkSheet("Sheet1")

	For i As Integer = 0 To ws.Rows.Count() - 1
		' Skip header row
		If i = 0 Then
			Continue For
		End If

		' Set cell value dynamically based on row index
		ws.Rows(i).Columns(1).Value = "New Value " & i.ToString()
	Next i

	wb.SaveAs("sample.xlsx")
End Sub
$vbLabelText   $csharpLabel

下面是 sample.xlsx 的表格结果:

前
后

将电子表格转换为 PDF、XML 和 JSON.

您是否使用 Excel API 在 Java 应用程序中生成电子表格? 在处理数据时,有时您不想将数据存储在 Excel 电子表格中。 相反,您需要 PDF 文件。

您不想在 Excel 电子表格中存储数据有几个原因:

  • 您需要长期保存。
  • 您的系统中没有安装 Microsoft Office,但仍想打印或分发 Excel 电子表格。
  • 您需要共享电子表格并保留格式。 您需要您的 Excel 电子表格在不同系统上打开时看起来完全一样。

使用 GrapeCity 将电子表格转换为 PDF.

GrapeCity Documents for Excel, Java Edition(GcExcel Java)是一款高速、小巧的电子表格 API,对 Excel 的依赖性为零。 通过对 Windows、Linux 和 Mac 的全面支持,您可以生成、加载、修改和保存电子表格,然后将其转换为 PDF。

以下是在 Java 应用程序中将电子表格转换为 PDF 的三个步骤:

1.在 GcExcel 工作簿中加载现有 Excel 电子表格 2.将 PDFBox 添加为库 3.将电子表格转换为 PDF

步骤 1:在 GcExcel 工作簿中加载现有 Excel 电子表格

创建 GcExcel 工作簿对象并加载现有电子表格。

在 Java 应用程序中使用 Excel API 将电子表格转换为 PDF
Workbook workbook = new Workbook();
workbook.Open("FinancialKPI.xlsx");
Workbook workbook = new Workbook();
workbook.Open("FinancialKPI.xlsx");
Dim workbook As New Workbook()
workbook.Open("FinancialKPI.xlsx")
$vbLabelText   $csharpLabel

步骤 2:将 PDFBox 添加为库

GcExcel Java 引用 PDFBox 将电子表格转换为 PDF。 PDFBox 还依赖于 FontBox 和 Commons Logging 软件包。

按照以下步骤,您就可以将这些 JAR 文件作为库添加到您的项目中:

1.下载软件包 - PDFBox、FontBox 和 Commons Loggings JAR 文件。 2.在项目的 "src "文件夹下添加一个文件夹 "libs"。 3.将三个 JAR 文件复制到 "libs "文件夹。 4.右键单击 "libs "文件夹,选择 "添加为库 "选项。 5.按确定。

注意:只有当项目是原始 Java 控制台项目时,才需要上述步骤。 如果项目是 Maven 或 Gradle 项目,只需添加 GcExcel Java 依赖关系即可。 Maven 或 Gradle 会自动下载并安装所有依赖的 JAR。

在某些版本的 Maven 中,添加上述 JAR 文件时可能会出现依赖关系错误。 为了解决这个问题,请在 pom.xml 中的依赖项之前添加以下节点:

<build>
    <plugins>
        <plugin>
            <groupId>org.apache.felix</groupId>
            <artifactId>maven-bundle-plugin</artifactId>
            <extensions>true</extensions>
        </plugin>
    </plugins>
</build>
<build>
    <plugins>
        <plugin>
            <groupId>org.apache.felix</groupId>
            <artifactId>maven-bundle-plugin</artifactId>
            <extensions>true</extensions>
        </plugin>
    </plugins>
</build>
XML

步骤 3:将电子表格转换为 PDF 文件

使用以下代码将电子表格保存为 PDF:

workbook.Save("FinancialKPI.pdf", SaveFileFormat.Pdf);
workbook.Save("FinancialKPI.pdf", SaveFileFormat.Pdf);
workbook.Save("FinancialKPI.pdf", SaveFileFormat.Pdf)
$vbLabelText   $csharpLabel

您的 PDF 将如下所示:

在 Java 应用程序中使用 Excel API 将电子表格转换为 PDF
在 Java 应用程序中使用 Excel API 将电子表格转换为 PDF

使用 IronXL 将电子表格转换为 XML 和 JSON.

以下代码演示了如何使用 IronXL.Excel 将 Excel 文件导出为 XML 或 JSON 文件。 添加以下代码:

包括命名空间:

using IronXL;
using IronXL;
Imports IronXL
$vbLabelText   $csharpLabel

添加以下几行:

private void ExportToXmlJson()
{        
    WorkBook workbook = WorkBook.Load("IronXL_Output.xlsx");

    // Export to JSON
    workbook.SaveAsJson("IronXL_Output.json");

    // Export to XML
    workbook.SaveAsXml("IronXL_Output.xml");
}
private void ExportToXmlJson()
{        
    WorkBook workbook = WorkBook.Load("IronXL_Output.xlsx");

    // Export to JSON
    workbook.SaveAsJson("IronXL_Output.json");

    // Export to XML
    workbook.SaveAsXml("IronXL_Output.xml");
}
Private Sub ExportToXmlJson()
	Dim workbook As WorkBook = WorkBook.Load("IronXL_Output.xlsx")

	' Export to JSON
	workbook.SaveAsJson("IronXL_Output.json")

	' Export to XML
	workbook.SaveAsXml("IronXL_Output.xml")
End Sub
$vbLabelText   $csharpLabel

在这里,先加载现有的 Excel 工作簿对象,然后导出为 JSON 和 XML 格式。

授权和定价

IronXL 许可和定价

IronXL是一个开放商业的C# Excel库。 它适用于开发,并始终可以为商业部署获得许可证。 许可证面向单个项目使用、单个开发人员、机构和跨国组织,以及 SaaS 和 OEM 再分发。 所有许可证均包含 30 天退款保证、一年的软件支持和升级、开发/分期/生产有效期以及永久许可证(一次性购买)。 Lite 捆绑包的起价为 $799。

GrapeCity 许可和定价

另一方面,GrapeCity Excel 也是一个商用 Excel 库; 不提供任何免费服务。 GrapeCity 文档的起价为每年 $999 的统一费率。 他们还提供免费试用。 他们的许可证分为四个套餐:

开发人员许可证(1 名开发人员,1 个地点)

一 (1) 名开发人员可在一 (1) 个地点使用 GrapeCity 文档并获得开发人员许可证(定义为物理地址或办公楼)。 多个站点被视为一个云部署; 更多信息,请参见 Unlimited License。

开发人员无限 License(1 个开发人员,不限地点或云)

一 (1) 名开发人员可以在不限数量的地点(指定为物理地址或办公楼)使用 GrapeCity 文档,也可以使用开发人员 Unlimited License 在云中使用 GrapeCity 文档。

团队无限 License(2-5 名开发人员,不限地点或云)

GrapeCity 文档最多可由五 (5) 名开发人员在无限地点(指定为物理地址或办公楼)使用,也可通过团队无限 License 在云中使用。

OEM 和 SaaS 许可证(6 名以上开发人员)

请联系销售支持部门。

结论

在 .NET 应用程序和网站中,IronXL for .NET 允许开发人员读取、生成和修改 Excel(以及其他电子表格文件)。 可读取和编辑 XLS/XLSX/CSV/TSV,导出内容可保存为 XLS/XLSX/CSV/TSV/JSON。 它与 .NET Framework、.NET Core 和 Azure 兼容。 All of this is accomplished without the need for additional dependencies or the installation of Microsoft Office. If you've ever felt that Excel is getting in the way of your .NET office management skills, IronXL is here to help. This is why we built the C# Excel library, which allows you to read, generate, and modify Excel files in .NET apps and websites as a successful developer.

GcExcel(GrapeCity Documents for Excel)是一种无需 Excel 的快速、小体积电子表格 API。 您可以在完全支持 .NET Standard 2.0 的 .NET Framework、.NET Core、Mono 和 Xamarin 中生成、加载、更改和转换电子表格。 该电子表格 API 可用于构建云、Windows、Mac 和 Linux 应用程序。 由于其复杂的计算引擎和广泛的功能,您永远不必牺牲设计或要求。

GrapeCity Excel 的许可证起价为 $995 每位开发人员,而 IronXL 的 $799 则具有免版税和 Unlimited 多用户计划的优势,当您为大量开发人员购买时,GcExcel 的价格会比 GcExcel 便宜,因为 GcExcel 的超多用户计划最多可容纳 6 位用户。

由于 IronXL.Excel 在处理 Excel 文档方面的高效性,它比其他 C# 替代语言更受青睐。 IronXL 还因其鼓励缩短代码行数的操作方法而脱颖而出。

Iron Software 目前为其所有客户和用户提供了只需点击两下即可获得整个 Iron Software 套件的选择--只需支付 Iron Software 套件中两个软件包的价格,即可获得全部五个软件包以及不间断的支持。

请注意GrapeCity Documents for Excel 是其各自所有者的注册商标。 本网站与 GrapeCity Documents for Excel 无关,也未得到其支持或赞助。 所有产品名称、徽标和品牌均为各自所有者的财产。 比较仅供参考,反映的是撰写时的公开信息。

常见问题解答

C# 开发者的 GrapeCity Excel Viewer 的替代方案有哪些?

IronXL 是 C# 开发者的 GrapeCity Excel Viewer 的热门替代方案。它简化了读取和编辑 Excel 文档,无需 Microsoft Excel,支持各种格式和平台,并提供高效的数据处理功能。

如何在 C# 中读取和编辑 Excel 文档而无需安装 Microsoft Excel?

您可以使用 IronXL 在 C# 中读取和编辑 Excel 文档,无需 Microsoft Excel。IronXL 支持多种电子表格格式,并能在不同平台上高效处理操作。

IronXL 支持 Excel 操作的平台有哪些?

IronXL 支持 .NET Core、.NET Framework、Xamarin、Mobile、Linux、macOS 和 Azure,使其适用于各种开发环境。

IronXL 如何处理 Excel 公式?

IronXL 通过确保每次编辑工作表时重新计算公式来支持 Excel 公式,允许动态数据操作和准确的数据结果。

我可以使用 IronXL 将 Excel 数据导出为 JSON 或 XML 吗?

可以,IronXL 提供将 Excel 数据导出为 JSON 和 XML 格式的功能,便于数据集成和转换任务。

IronXL 的许可选项有哪些?

IronXL 提供免版税许可选项,专注于多用户计划,为团队和各种应用提供具有成本效益的解决方案。

GrapeCity Documents for Excel 的突出功能有哪些?

GrapeCity Documents for Excel 提供轻量级 API、高速数据处理和与 .xlsx 及 ssjson 等多种格式的兼容性,以及与商业智能工具的无缝集成。

IronXL 和 GrapeCity Documents for Excel 在定价上有何不同?

GrapeCity Documents for Excel 每年起价 $999,而 IronXL 提供更灵活且具成本效益的免版税许可选项,特别适合多用户环境。

为什么开发者可能选择 IronXL 而不是 GrapeCity 进行 Excel 操作?

开发者可能会选择 IronXL,因为它在处理 Excel 文档时的简单性、高效性和操作方便性,特别是对于需要快速和简单文档处理的应用。

Curtis Chau
技术作家

Curtis Chau 拥有卡尔顿大学的计算机科学学士学位,专注于前端开发,精通 Node.js、TypeScript、JavaScript 和 React。他热衷于打造直观且美观的用户界面,喜欢使用现代框架并创建结构良好、视觉吸引力强的手册。

除了开发之外,Curtis 对物联网 (IoT) 有浓厚的兴趣,探索将硬件和软件集成的新方法。在空闲时间,他喜欢玩游戏和构建 Discord 机器人,将他对技术的热爱与创造力相结合。