与其他组件比较

IronXL 与葡萄城 Excel Viewer 之间的比较

发布 2022年六月9日
分享:

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

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

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

什么是 Excel 版 GrapeCity 文档?

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

它具有无缝嵌入式商业智能平台 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 版具有许多令人兴奋的新功能。

  • 提高效率的轻量级电子表格应用程序接口架构

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

  • 不依赖 MS Excel****

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

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

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

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

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

  • 形状和图片

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

什么是 IronXL?

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

IronXL 是一个用户友好的 C# 应用程序接口,可让你在 .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 应用程序中使用 GcExcel .NET (任何支持 .NET 标准 2.0 的目标)请使用以下步骤在应用程序中安装 NuGet 软件包:

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

1.从 "解决方案资源管理器 "中依赖项或项目的上下文菜单中选择 "管理 NuGet 包"。

2.从 "浏览 "选项卡的 "包源 "下拉菜单中选择 nuget.org。

3.在浏览选项卡中,在顶部的搜索文本框中输入 "grapecity.documents "或 "GrapeCity.Documents",搜索软件包 "GrapeCity.Documents.Excel"。

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

IronXL C# 库安装

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

  • 使用 Visual Studio 和 NuGet 软件包。
  • 直接下载 NuGet 包。

  • 使用 DLL 手动安装

让我们逐一详细了解。

使用 Visual Studio 和 NuGet 软件包

Visual Studio 提供了 NuGet 包管理器,用于在项目中安装 NuGet 包。你可以通过 "项目菜单 "或右键单击 "解决方案资源管理器 "中的项目来访问它。

选择管理 NuGet 软件包
  • 然后,从 "浏览 "选项卡 -> 搜索 IronXL.Excel -> 安装
搜索 IronXL
  • 我们就大功告成了。

使用 NuGet 软件包管理器控制台

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

  • 打开开发人员命令提示符--通常可在 Visual Studio 文件夹中找到。
  • 键入以下命令

PM> Install-Package Microsoft.Office.Interop.Excel
  • 按回车键
  • 这将下载并安装软件包。

  • 重新加载 Visual Studio 项目并开始使用。

添加必要的使用指令

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

2.在代码文件顶部添加以下 using 指令:


using Excel = Microsoft.Office.Interop.Excel.Reporting;

创建 Excel 工作簿和工作表

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

使用 IronXL 创建 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)
VB   C#

两种 XLS (旧版 Excel 文件) 和 XLSX (当前和更新的文件版本) 文件格式。

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

var worksheet = workbook.CreateWorkSheet("IronXL Features");
var worksheet = workbook.CreateWorkSheet("IronXL Features");
Dim worksheet = workbook.CreateWorkSheet("IronXL Features")
VB   C#

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

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

用于 Excel 的 GrapeCity 文档 (或 GcExcel) GcExcel 是一个服务器端 Excel API,允许您在任何 .NET 标准应用程序中创建、加载、保存、转换、计算、格式化、解析和导出电子表格。由于 GcExcel 完全支持 .NET5,因此部署到 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
}
VB   C#

编辑 Excel 文件

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

使用 GrapeCity Excel 编辑 Excel 文件

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

你拿到的电子表格是这样的:

首先,我们要格式化工作表:

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

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

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

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

Workbook workbook = new Workbook();
workbook.open("Event budget.xlsx");
Workbook workbook = new Workbook();
workbook.open("Event budget.xlsx");
Dim workbook As New Workbook()
workbook.open("Event budget.xlsx")
VB   C#

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

IWorksheet worksheet = workbook.getActiveSheet();
IWorksheet worksheet = workbook.getActiveSheet();
Dim worksheet As IWorksheet = workbook.getActiveSheet()
VB   C#

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

更改 B2 的字体属性 (字号) 和 E4 (设为粗体) 细胞

//change range B2s font size.
worksheet.getRange("B2").getFont().setSize(22);

//change range E4s font style to bold.
worksheet.getRange("E4").getFont().setBold(true);
//change range B2s font size.
worksheet.getRange("B2").getFont().setSize(22);

//change range E4s font style to bold.
worksheet.getRange("E4").getFont().setBold(true);
'change range B2s font size.
worksheet.getRange("B2").getFont().setSize(22)

'change range E4s font style to bold.
worksheet.getRange("E4").getFont().setBold(True)
VB   C#

第 4 步:修改表格样式

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

worksheet.getTables().get("tblAdmissions").setTableStyle(workbook.getTableStyles().get("TableStyleLight10"));
worksheet.getTables().get("tblAds").setTableStyle(workbook.getTableStyles().get("TableStyleLight10"));
worksheet.getTables().get("tblVendors").setTableStyle(workbook.getTableStyles().get("TableStyleLight10"));
worksheet.getTables().get("tblItems").setTableStyle(workbook.getTableStyles().get("TableStyleLight10"));
worksheet.getTables().get("tblAdmissions").setTableStyle(workbook.getTableStyles().get("TableStyleLight10"));
worksheet.getTables().get("tblAds").setTableStyle(workbook.getTableStyles().get("TableStyleLight10"));
worksheet.getTables().get("tblVendors").setTableStyle(workbook.getTableStyles().get("TableStyleLight10"));
worksheet.getTables().get("tblItems").setTableStyle(workbook.getTableStyles().get("TableStyleLight10"));
worksheet.getTables().get("tblAdmissions").setTableStyle(workbook.getTableStyles().get("TableStyleLight10"))
worksheet.getTables().get("tblAds").setTableStyle(workbook.getTableStyles().get("TableStyleLight10"))
worksheet.getTables().get("tblVendors").setTableStyle(workbook.getTableStyles().get("TableStyleLight10"))
worksheet.getTables().get("tblItems").setTableStyle(workbook.getTableStyles().get("TableStyleLight10"))
VB   C#

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

修改总收入单元格的单元格样式。获取内部() 方法可以帮助您设置主题颜色和色调属性。您还可以使用 getFont() 方法。此外,该代码还可以设置单元格区域的边框。

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

//modify range F4:G5's cell style.
worksheet.getRange("F4:G5").getInterior().setThemeColor(ThemeColor.Light1);
worksheet.getRange("F4:G5").getInterior().setTintAndShade(-0.15);
worksheet.getRange("F4:G5").getFont().setThemeFont(ThemeFont.Major);
worksheet.getRange("F4:G5").getFont().setSize(12);  worksheet.getRange("F4:G5").getBorders().get(BordersIndex.InsideHorizontal).setLineStyle(BorderLineStyle.None);
worksheet.getRange("F5:G5").setNumberFormat("$#,##0.00");
//modify range F4:G5's cell style.
worksheet.getRange("F4:G5").getInterior().setThemeColor(ThemeColor.Light1);
worksheet.getRange("F4:G5").getInterior().setTintAndShade(-0.15);
worksheet.getRange("F4:G5").getFont().setThemeFont(ThemeFont.Major);
worksheet.getRange("F4:G5").getFont().setSize(12);  worksheet.getRange("F4:G5").getBorders().get(BordersIndex.InsideHorizontal).setLineStyle(BorderLineStyle.None);
worksheet.getRange("F5:G5").setNumberFormat("$#,##0.00");
'modify range F4:G5's cell style.
worksheet.getRange("F4:G5").getInterior().setThemeColor(ThemeColor.Light1)
worksheet.getRange("F4:G5").getInterior().setTintAndShade(-0.15)
worksheet.getRange("F4:G5").getFont().setThemeFont(ThemeFont.Major)
worksheet.getRange("F4:G5").getFont().setSize(12)
worksheet.getRange("F4:G5").getBorders().get(BordersIndex.InsideHorizontal).setLineStyle(BorderLineStyle.None)
worksheet.getRange("F5:G5").setNumberFormat("$#,##0.00")
VB   C#

第 6 步:修改表格列样式

由于表格列范围不同,请在表格的不同列范围设置主题颜色、色调和阴影属性以及数字格式。

worksheet.getRange("F8:G11, F15:G18, F22:G25, F29:G33").getInterior().setThemeColor(ThemeColor.Light1);
worksheet.getRange("F8:G11, F15:G18, F22:G25, F29:G33").getInterior().setTintAndShade(-0.15);
worksheet.getRange("E8:G11, E15:G18, E22:G25, E29:G33").setNumberFormat("$#,##0.00");
worksheet.getRange("F8:G11, F15:G18, F22:G25, F29:G33").getInterior().setThemeColor(ThemeColor.Light1);
worksheet.getRange("F8:G11, F15:G18, F22:G25, F29:G33").getInterior().setTintAndShade(-0.15);
worksheet.getRange("E8:G11, E15:G18, E22:G25, E29:G33").setNumberFormat("$#,##0.00");
worksheet.getRange("F8:G11, F15:G18, F22:G25, F29:G33").getInterior().setThemeColor(ThemeColor.Light1)
worksheet.getRange("F8:G11, F15:G18, F22:G25, F29:G33").getInterior().setTintAndShade(-0.15)
worksheet.getRange("E8:G11, E15:G18, E22:G25, E29:G33").setNumberFormat("$#,##0.00")
VB   C#

第 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")
VB   C#

祝贺! 你完全改变了文档的格式。运行应用程序,您的 Excel 电子表格看起来就像这样:

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

使用 IronXL 编辑 Excel 文件

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

编辑特定单元格的值

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

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

using IronXL;
static void Main(string [] args)
{
WorkBook wb = WorkBook.Load("sample.xlsx");//import Excel SpreadSheet
WorkSheet ws = wb.GetWorkSheet("Sheet1");//access specific workshet
ws.Rows [3].Columns [1].Value = "New Value";//access specific cell and modify its value
wb.SaveAs("sample.xlsx");//save changes
}
using IronXL;
static void Main(string [] args)
{
WorkBook wb = WorkBook.Load("sample.xlsx");//import Excel SpreadSheet
WorkSheet ws = wb.GetWorkSheet("Sheet1");//access specific workshet
ws.Rows [3].Columns [1].Value = "New Value";//access specific cell and modify its value
wb.SaveAs("sample.xlsx");//save changes
}
Imports IronXL
Shared Sub Main(ByVal args() As String)
Dim wb As WorkBook = WorkBook.Load("sample.xlsx") 'import Excel SpreadSheet
Dim ws As WorkSheet = wb.GetWorkSheet("Sheet1") 'access specific workshet
ws.Rows (3).Columns (1).Value = "New Value" 'access specific cell and modify its value
wb.SaveAs("sample.xlsx") 'save changes
End Sub
VB   C#

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

之前
之后

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

如果需要,也可以通过单元格地址编辑特定单元格值:

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" 'alternative way to access specific cell and apply changes
VB   C#

编辑整行值

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

using IronXL;static void Main(string [] args){    
    WorkBook wb = WorkBook.Load("sample.xlsx");    
    WorkSheet ws = wb.GetWorkSheet("Sheet1");    
    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");    
    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")
	ws.Rows (3).Value = "New Value"
	wb.SaveAs("sample.xlsx")
End Sub
VB   C#

请看下面的 sample.xlsx 截图:

之前
之后

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

ws ["A3:E3"].Value = "New Value";
ws ["A3:E3"].Value = "New Value";
ws ("A3:E3").Value = "New Value"
VB   C#

编辑全列值

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

using IronXL;static void Main(string [] args){    WorkBook wb = WorkBook.Load("sample.xlsx");    WorkSheet ws = wb.GetWorkSheet("Sheet1");    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");    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")
	ws.Columns (1).Value = "New Value"
	wb.SaveAs("sample.xlsx")
End Sub
VB   C#

这将生成我们的 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++)    {        
        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++)    {        
        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
		ws.Rows (3).Columns (i).Value = "New Value " & i.ToString()
	Next i
	wb.SaveAs("sample.xlsx")
End Sub
VB   C#

在下表中,我们可以看到 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++)    {        
        if (i == 0) //it is for if our first column is used as a header            
            continue;        

        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++)    {        
        if (i == 0) //it is for if our first column is used as a header            
            continue;        

        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
		If i = 0 Then 'it is for if our first column is used as a header
			Continue For
		End If

		ws.Rows (i).Columns (1).Value = "New Value " & i.ToString()
	Next i
	wb.SaveAs("sample.xlsx")
End Sub
VB   C#

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

之前
之后

使用动态值编辑整列

使用动态值编辑特定列也很容易。

using IronXL;static void Main(字符串 [] 参数){ WorkBook wb = WorkBook.Load("sample.xlsx")工作表 ws = wb.GetWorkSheet("工作表 1")为 (int i = 0; i < ws.Rows.Count(); i++) { 如果 (i == 0)//继续; ws.Rows [i].列 [1].Value = "New Value " + i.ToString(); } wb.SaveAs("sample.xlsx");}

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

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

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

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

  • 您需要长期保存数据。
  • 系统中没有安装 Microsoft Office,但仍想打印或分发 Excel 电子表格。

  • 您需要共享电子表格并保留格式。您需要 Excel 电子表格在不同系统上打开时看起来完全一样。

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

GrapeCity Excel 文档 Java 版 (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")
VB   C#

第 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>真</extensions>
        </plugin>
    </plugins>
</build>

第 3 步:将电子表格转换为 PDF

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

workbook.save("FinancialKPI.pdf", SaveFileFormat.Pdf);
workbook.save("FinancialKPI.pdf", SaveFileFormat.Pdf);
workbook.save("FinancialKPI.pdf", SaveFileFormat.Pdf)
VB   C#

您的 PDF 文件将如下所示:

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

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

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

包含命名空间:

using IronXL;
using IronXL;
Imports IronXL
VB   C#

添加后面几行:

    private void button4_Click(object sender, EventArgs e)    {        
        WorkBook workbook = WorkBook.Load("IronXL_Output.xlsx");        
        workbook.SaveAsJson("IronXL_Output.json");        
        workbook.SaveAsXml("IronXL_Output.xml");    
    }
    private void button4_Click(object sender, EventArgs e)    {        
        WorkBook workbook = WorkBook.Load("IronXL_Output.xlsx");        
        workbook.SaveAsJson("IronXL_Output.json");        
        workbook.SaveAsXml("IronXL_Output.xml");    
    }
Private Sub button4_Click(ByVal sender As Object, ByVal e As EventArgs)
		Dim workbook As WorkBook = WorkBook.Load("IronXL_Output.xlsx")
		workbook.SaveAsJson("IronXL_Output.json")
		workbook.SaveAsXml("IronXL_Output.xml")
End Sub
VB   C#

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

许可和定价

IronXL 许可和定价

IronXL 是一个公开商业化的 C# Excel 库。它可免费用于开发,也可随时授权用于商业部署。许可证适用于单个项目使用、单个开发人员、机构和跨国组织,以及 SaaS 和 OEM 再分发。所有许可证均包含 30 天退款保证、一年的软件支持和升级、开发/分期/生产有效期以及永久许可证。 (一次性购买).Lite 捆绑包从 $749 开始。

GrapeCity 许可和定价

另一方面,GrapeCity Excel 也是一个商业 Excel 库;它不提供任何免费服务。GrapeCity Documents 的起价为每年 999 美元。他们还提供免费试用。他们的许可证分为四种套餐:

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

一个 (1) 开发人员可以在一个文件中使用 GrapeCity 文档 (1) 使用开发人员许可证的位置 (指实际地址或办公楼).多个站点被视为构成云部署;更多信息请参阅无限许可。

开发人员无限许可 (1 名开发人员,不限地点或云)

一个 (1) 开发人员可在无限多个地点使用 GrapeCity 文档 (指定为实际地址或办公楼) 或在云中使用开发人员无限许可证。

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

GrapeCity 文档最多可由五个人使用 (5) 开发商在无限的地点 (指定为实际地址或办公楼) 或在云中使用团队无限许可证。

OEM 和 SaaS 许可 (6+ 开发人员)

可联系销售支持部门进行设置。

结论

在 .NET 应用程序和网站中,IronXL for .NET 允许开发人员读取、生成和修改 Excel (和其他电子表格文件).可读取和编辑 XLS/XLSX/CSV/TSV,并可将导出内容保存为 XLS/XLSX/CSV/TSV/JSON。它与 .NET Framework、.NET Core 和 Azure 兼容。所有这些都无需额外依赖或安装 Microsoft Office。如果您觉得 Excel 阻碍了您的 .NET 办公管理技能,IronXL 就是您的好帮手。这就是我们构建 C# Excel 库作为一名成功的开发人员,您可以通过它在 .NET 应用程序和网站中读取、生成和修改 Excel 文件。

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

与 IronXL 的"$liteLicense "相比,GrapeCity Excel 许可证的起价为每位开发人员 995 美元,而 IronXL 的"$liteLicense "则具有免版税和无限多用户计划的优势,当您为大量开发人员购买时,该计划会比 GCexcel 便宜,因为 GCexcel 的超多用户计划最多只有 6 个用户。

与其他 C# 替代软件相比,IronXL 是首选,因为它能高效处理 Excel 文档。此外,IronXL 还因其鼓励缩短代码行数的操作方法而脱颖而出。

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

< 前一页
IronXL与ClosedXML的比较
下一步 >
IronXL与Syncfusion Excel的比较

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

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