
如何在 C# 中将 Excel 文件转换为 XML
微软 Excel 是一种广泛使用的多功能电子表格应用程序,以其在组织、分析和可视化数据方面的有效性而闻名。 它的工作方式类似于一个网格,用户可以在各个单元格中输入各种类型的输入,例如文本、数字、日期和公式,数据按行和列排列以方便管理。 其强大的公式和函数计算功能使用户能够执行广泛的逻辑、统计和数学任务。
Excel 提供了用于管理和评估数据以及生成图表的工具,以可视化方式呈现数据。 它通过允许多个用户同时编辑和共享文件来促进协作。 由于其对多种用户需求的适应性,它可以通过宏、VBA 和加载项进行定制和自动化。 Excel 工作簿类被用于多个领域,包括银行业、教育、研究和商业分析。 这是一个组织、评估和使用数据来做出决策的基本工具。 在本文中,我们将学习如何在 C# 中将 Excel 转换为 XML。
Convert Excel Files (XLS) to XML Format in C#
- 在 Visual Studio 中创建一个控制台项目。
- 安装 IronXL 库。
- 初始化 IronXL 的必要对象。
- 创建一个新的 Excel 文件(XLS 或 XLSX)或将 Excel 文件加载到创建的对象中。
- 使用
XMLSaveOptions类将加载的文件转换为XML。 - 处理 IronXL 对象。
using IronXL;
class Program
{
static void Main()
{
// Step 2: Install IronXL library
// Step 3: Initialize IronXL object
WorkBook workbook = WorkBook.Create(ExcelFileFormat.XLSX);
// Step 4: Create or load Excel file
// Create a new Excel file
WorkSheet worksheet = workbook.CreateWorkSheet("Sheet1");
worksheet["A1"].Value = "Hello";
worksheet["B1"].Value = "World";
// Or load an existing Excel file
workbook = WorkBook.Load("path_to_excel_file.xlsx");
// Step 5: Convert Excel to XML
XMLSaveOptions saveOptions = new XMLSaveOptions();
workbook.SaveAsXml("path_to_output_xml_file.xml", saveOptions);
// Step 6: Dispose of the IronXL objects
worksheet.Dispose();
workbook.Dispose();
}
}Imports IronXL
Friend Class Program
Shared Sub Main()
' Step 2: Install IronXL library
' Step 3: Initialize IronXL object
Dim workbook As WorkBook = WorkBook.Create(ExcelFileFormat.XLSX)
' Step 4: Create or load Excel file
' Create a new Excel file
Dim worksheet As WorkSheet = workbook.CreateWorkSheet("Sheet1")
worksheet("A1").Value = "Hello"
worksheet("B1").Value = "World"
' Or load an existing Excel file
workbook = WorkBook.Load("path_to_excel_file.xlsx")
' Step 5: Convert Excel to XML
Dim saveOptions As New XMLSaveOptions()
workbook.SaveAsXml("path_to_output_xml_file.xml", saveOptions)
' Step 6: Dispose of the IronXL objects
worksheet.Dispose()
workbook.Dispose()
End Sub
End Class在上述代码中,我们首先安装 IronXL 库。 然后,我们初始化IronXL对象并创建或加载Excel文件。最后,我们使用XMLSaveOptions类将加载的文件转换为XML。 使用后不要忘记处理 IronXL 对象。
IronXL是什么?
强大的 .NET Framework Excel 库IronXL旨在促进与用 C#、VB.NET 和其他 .NET 语言编写的 Excel 交互。 它兼容 XLS 和 XLSX 文件格式。 使用此库,开发人员可以更快更简单地编写、读取、编辑和生成 Excel 电子表格。 此外,还提供种类繁多的工具和功能。
IronXL 的关键功能和属性包括:
- **数据处理:**IronXL 使读取、写入和操作 Excel 电子表格中的数据变得轻松简单。 可以使用二维数组获取单元格值,并且可以进行公式、计算和数据格式化。
- **Excel 文件的创建与修改:**开发者不仅可以创建新的 Excel 文件和修改现有文件,还可以添加、删除和管理工作表。此外,他们还可以通过 DLL 文件与各种 Excel 组件进行交互。
- **多功能性与兼容性:**凭借其跨平台互操作性,IronXL 可应用于多种应用场景,并能与包括 Xamarin、.NET Core 和 .NET Framework 在内的多个 .NET 平台集成。
- **同时支持传统和现代 Excel 格式:**它既支持较旧的 XLS Excel 格式,也支持更现代的 XLSX Excel 格式。 它可以处理较新的基于 XML 的格式(XLSX,来自 Excel 2007)以及较旧的 Excel 文件格式(XLS,来自 Excel 97–2003)。
- **实用性:**通过提供具有易于理解的属性和函数的直观 API,该库提高了不同经验水平的开发人员进行 Excel 相关操作的便捷性。
- **数据提取与导出:**IronXL 支持从 Excel 文件中提取数据,并将 Excel 数据导出为多种格式,例如 XML、新的 DataTable 以及纯文本,从而简化了与数据库及其他系统的对接。
- **支持与文档:**IronXL 提供了丰富的教程、文档和支持资源,以协助开发人员使用其库进行基于 Excel 的操作。
- **自动化与效率:**通过自动化 Excel 流程,IronXL 使用户能够构建数据驱动的高效应用程序,提高生产力,并减少手动操作的时间。
- **集成与定制:**通过将 Excel 数据导出为多种格式,可更轻松地创建个性化报告和数据驱动型解决方案。 它也与数据库和其他系统配合良好。
金融、数据分析、报告、商业智能和软件开发只是利用 IronXL 的众多行业中的一部分。 结合数据操作和 Excel 集成,使程序员能够处理 Excel 文件并产生可靠的解决方案。 要了解更多,请访问此链接。
创建新的Visual Studio项目
设置 Visual Studio 控制台项目很简单。 按照这些步骤创建一个控制台应用程序:
-
启动 Visual Studio。 确保您的计算机上安装了 Visual Studio。
-
创建新项目: 选择文件 > 新建 > 项目。

-
在"创建新项目"框的左侧选择您偏好的编程语言(例如,C#)。
-
从可用项目模板列表中选择"控制台应用程序"或"控制台应用程序(.NET Core)"模板。
-
在"名称"字段中为您的项目提供一个名称。

-
选择存储项目的位置。
-
单击"创建"以开始新的控制台应用程序项目。

安装IronXL库
要安装 IronXL 库,请按照以下步骤操作:
-
安装 IronXL 库,因为下一个步骤需要它。 在 NuGet 包管理器控制台中使用以下命令:
Install-Package IronXLSHELL
-
另一种方法是使用 NuGet 包管理器搜索包 "IronXL"。 从搜索结果中选择适合的 IronXL NuGet 包。

Convert Excel File to XML in C#
可以使用IronXL的SaveAsXml函数将Excel文件中的数据保存为XML文件格式。
以下是在C#中结合IronXL使用SaveAsXml函数的示例:
using IronXL;
class Program
{
static void Main(string[] args)
{
// Specify the path to your existing Excel file
string excelFilePath = "path_to_excel_file.xlsx";
// Specify the path to where the resulting XML file should be saved
string xmlFilePath = "path_to_output_xml_file.xml";
// Load Excel file using IronXL
WorkBook workbook = WorkBook.Load(excelFilePath);
// Save Excel data as XML
workbook.SaveAsXml(xmlFilePath);
Console.WriteLine("Excel data saved as XML successfully at: " + xmlFilePath);
}
}Imports IronXL
Friend Class Program
Shared Sub Main(ByVal args() As String)
' Specify the path to your existing Excel file
Dim excelFilePath As String = "path_to_excel_file.xlsx"
' Specify the path to where the resulting XML file should be saved
Dim xmlFilePath As String = "path_to_output_xml_file.xml"
' Load Excel file using IronXL
Dim workbook As WorkBook = WorkBook.Load(excelFilePath)
' Save Excel data as XML
workbook.SaveAsXml(xmlFilePath)
Console.WriteLine("Excel data saved as XML successfully at: " & xmlFilePath)
End Sub
End Class要保存生成的 XML 文件,请将 "path_to_output_xml_file.xml" 替换为相应的位置,将 "path_to_excel_file.xlsx" 替换为您的实际 Excel 文件的路径。
此代码示例加载一个Excel文件,并使用IronXL提供的SaveAsXml函数将Excel文件数据转换为XML格式,无需手动遍历行和列来构建XML。 此方法内部将 Excel 数据转换为 XML 格式,然后将其保存到指定的 XML 文件中。
请确保您在保存 XML 文件时具备向目录写入的必要权限。原始 Excel 文件的内容和布局可能会影响生成 XML 的类型和结构。
输入文件:

结果:

要了解更多关于代码的信息,请参阅这里的代码示例。
结论
从Excel文件导出数据到XML格式的一种简单高效的方法是使用IronXL的SaveAsXml函数。 此方法消除了在将 Excel 数据转换为 XML 格式时手动迭代行和单元格的需要。 IronXL 是一个提供此功能的 .NET 库。
通过在C#中利用IronXL的SaveAsXml函数,用户可以轻松快速地将Excel数据转换为XML格式。 IronXL 提供免费的社区版,但对非商业用途有所限制。 IronXL的付费版本通过订阅或永久许可模式提供,起价为$999。 这些付费版本提供增强的功能、支持和完整的功能。 有关许可证的最新信息,请参考 IronXL 的网站。 要了解有关 Iron Software 产品的更多信息,请访问此页面。

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



