如何在 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 文件加载到创建的对象中。
- 使用
SaveAsXml类中的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();
}
}
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 文件。最后,我们使用 SaveAsXml 方法和 XMLSaveOptions 类将加载的文件转换为 XML。 使用后不要忘记处理 IronXL 对象。
IronXL是什么?
强大的 .NET 框架 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 IronXLInstall-Package IronXLSHELL
- 另一种方法是使用 NuGet 包管理器搜索包 "IronXL"。 从搜索结果中选择适合的 IronXL NuGet 包。

Convert Excel File to XML in C#
您可以使用 IronXL 的 SaveAsXml 函数将 Excel 文件中的数据保存为 XML 文件格式。
以下是如何在 IronXL 中使用 C# 中的 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);
}
}
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 的类型和结构。
输入文件:

结果:

要了解更多关于代码的信息,请参阅这里的代码示例。
结论
使用 IronXL 的 SaveAsXml 函数,可以轻松高效地将 Excel 文件中的数据导出为 XML 格式。 此方法消除了在将 Excel 数据转换为 XML 格式时手动迭代行和单元格的需要。 IronXL 是一个提供此功能的 .NET 库。
通过使用 IronXL 的 C# 函数,用户可以轻松快速地将 Excel 数据转换为 XML 格式。 IronXL 提供免费的社区版,但对非商业用途有所限制。 IronXL 的付费版本可通过订阅或永久许可模式获得,起价为 $999。 这些付费版本提供增强的功能、支持和完整的功能。 有关许可证的最新信息,请参考 IronXL 的网站。 要了解有关 Iron Software 产品的更多信息,请访问此页面。
常见问题解答
如何在 C# 中将 Excel 文件转换为 XML?
您可以使用IronXL库在C#中将Excel文件转换为XML。首先,设置Visual Studio控制台项目,并通过NuGet安装IronXL。然后,加载或创建Excel文件,并在XMLSaveOptions类中利用SaveAsXml方法执行转换。
使用 IronXL 进行 Excel 到 XML 转换有哪些优势?
IronXL 提供了一个简便的 API,使 Excel 文件转换为 XML 的过程变得简单。它在内部处理转换,使其易于与 .NET 应用程序集成,无需手动数据迭代。
IronXL 是否兼容 XLS 和 XLSX 格式的转换?
是的,IronXL 兼容 XLS 和 XLSX 文件格式,为各种 Excel 文件操作和转换任务提供了多功能性。
在 Visual Studio 项目中安装 IronXL 的步骤是什么?
要在Visual Studio中安装IronXL,您可以使用NuGet包管理器控制台,命令为Install-Package IronXL,或者您可以在NuGet包管理器中搜索IronXL并直接从那里安装。
使用后如何确保正确处理 IronXL 对象?
在使用IronXL对象后,确保正确释放它们以释放资源。这可以通过在不再需要这些对象后调用Dispose方法来完成。
IronXL 兼容哪些编程语言?
IronXL 可以与多种 .NET 语言一起使用,包括 C# 和 VB.NET,使其成为开发人员在需要 Excel 集成的应用程序中工作的多用途选择。
IronXL 提供哪些许可选项?
IronXL 为非商业用途提供免费的社区版(有一些限制),而对于商业用途,付费版提供了增强的功能和支持,可通过订阅或永久许可证获得。
IronXL 如何促进 Excel 数据的导出到其他格式?
IronXL 允许从 Excel 文件中无缝提取和导出数据到各种格式,例如 XML 和纯文本,从而增强与数据库和其他系统的集成。


