IronXL 操作指南 C Sharp 读取 XLSX 文件 C# 读取 XLSX 文件 Curtis Chau 已更新:八月 20, 2025 下载 IronXL NuGet 下载 DLL 下载 免费试用 法学硕士副本 法学硕士副本 将页面复制为 Markdown 格式,用于 LLMs 在 ChatGPT 中打开 向 ChatGPT 咨询此页面 在双子座打开 向 Gemini 询问此页面 在双子座打开 向 Gemini 询问此页面 打开困惑 向 Perplexity 询问有关此页面的信息 分享 在 Facebook 上分享 分享到 X(Twitter) 在 LinkedIn 上分享 复制链接 电子邮件文章 This article was translated from English: Does it need improvement? Translated View the article in English 在使用各种 Excel 格式时,通常需要读取数据并以编程方式对其进行操作。 在接下来的教程中,我们将学习如何使用便捷的工具 IronXL 在 C# 中读取 Excel 电子表格中的数据。 快速入门:轻松加载工作簿并访问工作表 使用 IronXL,您只需一行代码即可通过 WorkBook.Load 方法加载 XLSX 文件。然后,您可以立即访问其第一个工作表或指定工作表,并开始读取单元格值——快速、流畅地读取 Excel 文件。 立即开始使用 NuGet 创建 PDF 文件: 使用 NuGet 包管理器安装 IronXL PM > Install-Package IronXL.Excel 复制并运行这段代码。 IronXL.WorkBook workbook = IronXL.WorkBook.Load("your-file.xlsx"); 部署到您的生产环境中进行测试 立即开始在您的项目中使用 IronXL,免费试用! 免费试用30天 读取 .XLSX 文件(C#) 为您的项目选择 IronXL 加载工作簿 从工作表中访问数据 应用求和、最小值和最大值等函数 将工作表读取为数据表、数据集等 1. 为您的项目选择 IronXL 在您的项目中使用 IronXL,可以以简单的方式在 C# 中处理 Excel 文件格式。 你可以通过直接下载安装 IronXL ,或者也可以使用NuGet Install for Visual Studio 。 该软件可免费用于开发。 Install-Package IronXL.Excel 如何使用教程 2. 加载工作簿 WorkBook是 IronXL 的一个类,其对象提供对 Excel 文件及其所有功能的完全访问权限。 例如,如果我们想访问一个 Excel 文件,我们可以使用以下代码: :path=/static-assets/excel/content-code-examples/how-to/c-sharp-read-xlsx-file-load-workbook.cs using IronXL; // Load the workbook WorkBook workBook = WorkBook.Load("sample.xlsx"); // Excel file path IRON VB CONVERTER ERROR developers@ironsoftware.com $vbLabelText $csharpLabel 在上面的代码中, WorkBook.Load()函数将sample.xlsx加载到workBook中。 通过访问 Excel 文件的特定工作表,可以对workBook执行任何类型的功能。 3. 访问特定工作表 要访问 Excel 文件的特定工作表,IronXL 提供了WorkSheet类。 它可以用于以下几种不同的用途: :path=/static-assets/excel/content-code-examples/how-to/c-sharp-read-xlsx-file-get-worksheet.cs using IronXL; // Access sheet by name WorkSheet workSheet = workBook.GetWorkSheet("Sheet1"); IRON VB CONVERTER ERROR developers@ironsoftware.com $vbLabelText $csharpLabel workBook是上面部分声明的工作簿。 或者 :path=/static-assets/excel/content-code-examples/how-to/c-sharp-read-xlsx-file-worksheet-index.cs using IronXL; // Access sheet by index WorkSheet workSheet = workBook.WorkSheets[0]; IRON VB CONVERTER ERROR developers@ironsoftware.com $vbLabelText $csharpLabel 或者 :path=/static-assets/excel/content-code-examples/how-to/c-sharp-read-xlsx-file-default-worksheet.cs using IronXL; // Access the default worksheet WorkSheet workSheet = workBook.DefaultWorkSheet; IRON VB CONVERTER ERROR developers@ironsoftware.com $vbLabelText $csharpLabel 或者 :path=/static-assets/excel/content-code-examples/how-to/c-sharp-read-xlsx-file-first-worksheet.cs using IronXL; using System.Linq; // Access the first worksheet WorkSheet workSheet = workBook.WorkSheets.First(); IRON VB CONVERTER ERROR developers@ironsoftware.com $vbLabelText $csharpLabel 或者 :path=/static-assets/excel/content-code-examples/how-to/c-sharp-read-xlsx-file-first-or-default-worksheet.cs using IronXL; using System.Linq; // Access the first or default worksheet WorkSheet workSheet = workBook.WorkSheets.FirstOrDefault(); IRON VB CONVERTER ERROR developers@ironsoftware.com $vbLabelText $csharpLabel 获取 ExcelSheet workSheet后,您可以从中获取任何类型的数据,并对其执行所有 Excel 功能。 4. 从工作表中访问数据 可以通过以下步骤从 Excel workSheet中访问数据: :path=/static-assets/excel/content-code-examples/how-to/c-sharp-read-xlsx-file-get-data.cs using IronXL; // Accessing data as a string string dataString = workSheet["A1"].ToString(); // Accessing data as an integer int dataInt = workSheet["B1"].Int32Value; IRON VB CONVERTER ERROR developers@ironsoftware.com $vbLabelText $csharpLabel 也可以从特定列的多个单元格中获取数据。 foreach (var cell in workSheet["A2:A10"]) { Console.WriteLine("Value is: {0}", cell.Text); } foreach (var cell in workSheet["A2:A10"]) { Console.WriteLine("Value is: {0}", cell.Text); } For Each cell In workSheet("A2:A10") Console.WriteLine("Value is: {0}", cell.Text) Next cell $vbLabelText $csharpLabel 这将显示单元格A2到A10的值。 这里提供了一个包含上述具体细节的完整代码示例。 :path=/static-assets/excel/content-code-examples/how-to/c-sharp-read-xlsx-file-log-data.cs using IronXL; using System; // Load an Excel file WorkBook workBook = WorkBook.Load("sample.xlsx"); WorkSheet workSheet = workBook.GetWorkSheet("Sheet1"); // Specify the range foreach (var cell in workSheet["B2:B10"]) { Console.WriteLine("Value is: {0}", cell.Text); } IRON VB CONVERTER ERROR developers@ironsoftware.com $vbLabelText $csharpLabel 它将显示以下结果: 使用 Excel 文件Sample.xlsx : 我们可以看到,使用这些方法在项目中使用 Excel 文件数据是多么轻松便捷。 5. 对数据执行函数 使用以下代码,通过应用 Sum、Min 或 Max 等聚合函数,可以非常轻松地从 Excel 工作表中访问筛选后的数据: :path=/static-assets/excel/content-code-examples/how-to/c-sharp-read-xlsx-file-aggregate-function.cs using IronXL; // Apply aggregate functions decimal sum = workSheet["G2:G10"].Sum(); // Sum of cells from G2 to G10 decimal min = workSheet["G2:G10"].Min(); // Minimum value in cells from G2 to G10 decimal max = workSheet["G2:G10"].Max(); // Maximum value in cells from G2 to G10 IRON VB CONVERTER ERROR developers@ironsoftware.com $vbLabelText $csharpLabel 如果您想了解更多详情,请查看我们关于如何编写 C# Excel 文件(特别是聚合函数)的深入教程。 :path=/static-assets/excel/content-code-examples/how-to/c-sharp-read-xlsx-file-min-max.cs using IronXL; using System; // Load the Excel workbook WorkBook workBook = WorkBook.Load("sample.xlsx"); // Get the specified WorkSheet WorkSheet workSheet = workBook.GetWorkSheet("Sheet1"); // Calculate sum, minimum, and maximum for a range of cells decimal sum = workSheet["G2:G10"].Sum(); decimal min = workSheet["G2:G10"].Min(); decimal max = workSheet["G2:G10"].Max(); // Output results Console.WriteLine("Sum is: {0}", sum); Console.WriteLine("Min is: {0}", min); Console.WriteLine("Max is: {0}", max); IRON VB CONVERTER ERROR developers@ironsoftware.com $vbLabelText $csharpLabel 这段代码将显示以下输出: 这就是 Excel 文件Sample.xlsx样子: 6. 将 Excel 工作表读取为数据表 使用 IronXL,将 Excel 工作表作为数据表进行操作非常容易。 :path=/static-assets/excel/content-code-examples/how-to/c-sharp-read-xlsx-file-datatable.cs using IronXL; using System.Data; // Convert worksheet to DataTable DataTable dt = workSheet.ToDataTable(); IRON VB CONVERTER ERROR developers@ironsoftware.com $vbLabelText $csharpLabel 如果我们想使用 Excel 工作表的第一行作为数据表列名,那么: :path=/static-assets/excel/content-code-examples/how-to/c-sharp-read-xlsx-file-datatable-header.cs using IronXL; using System.Data; // Convert worksheet to DataTable with the first row as column names DataTable dt = workSheet.ToDataTable(true); IRON VB CONVERTER ERROR developers@ironsoftware.com $vbLabelText $csharpLabel 因此, ToDataTable()的布尔参数将第一行设置为 DataTable 的列名。 默认值为False 。 :path=/static-assets/excel/content-code-examples/how-to/c-sharp-read-xlsx-file-print-datatable.cs using IronXL; using System; using System.Data; // Load the Excel workbook WorkBook workBook = WorkBook.Load("sample.xlsx"); // Get the specified WorkSheet WorkSheet workSheet = workBook.GetWorkSheet("Sheet1"); // Convert WorkSheet to DataTable DataTable dt = workSheet.ToDataTable(true); // Use first row as column names // Iterate through rows and columns and display data foreach (DataRow row in dt.Rows) // Access rows { for (int i = 0; i < dt.Columns.Count; i++) // Access columns of corresponding row { Console.Write(row[i] + " "); } Console.WriteLine(); } IRON VB CONVERTER ERROR developers@ironsoftware.com $vbLabelText $csharpLabel 使用上述代码,可以访问工作表中的每个单元格值并根据需要使用。 7. 将 Excel 文件读取为数据集 IronXL 提供了一个非常简单的功能,可以将完整的 Excel 文件( WorkBook )用作数据集。 使用 ToDataSet 方法将整个工作簿转换为 DataSet。 在这个例子中,我们将看到如何将 Excel 文件用作数据集。 :path=/static-assets/excel/content-code-examples/how-to/c-sharp-read-xlsx-file-excel-to-dataset.cs using IronXL; using System; using System.Data; // Load the Excel workbook WorkBook workBook = WorkBook.Load("sample.xlsx"); // Convert the WorkBook to a DataSet DataSet ds = workBook.ToDataSet(); // Iterate through tables in the DataSet and display table names foreach (DataTable dt in ds.Tables) { Console.WriteLine(dt.TableName); } IRON VB CONVERTER ERROR developers@ironsoftware.com $vbLabelText $csharpLabel 上述代码的输出结果如下所示: Excel 文件Sample.xlsx将如下所示: 在上面的例子中,我们可以看到,我们可以轻松地将 Excel 文件解析为 DataSet,并将其与 Excel 文件中的每个工作表一起用作 DataTable。 点击此处,深入了解如何将 Excel 解析为数据集,并查看代码示例。 让我们再来看一个例子,了解如何访问所有 Excel 工作表中每个单元格的值。 在这里,我们可以访问 Excel 文件中每个工作表的每个单元格的值。 :path=/static-assets/excel/content-code-examples/how-to/c-sharp-read-xlsx-all-excel-sheets.cs // 该代码片段不可用! IRON VB CONVERTER ERROR developers@ironsoftware.com $vbLabelText $csharpLabel 以上述示例为例,访问 Excel 文件中每个工作表的每个单元格的值非常方便。 有关如何在不使用 Interop 的情况下读取 Excel 文件的更多信息,请查看此处的代码。 教程快速访问 IronXL API 参考 请参阅文档,了解有关 IronXL 的功能、类、方法字段、命名空间和枚举的更多信息。 IronXL API 参考 常见问题解答 如何在 C# 中读取 XLSX 文件而不使用 Interop? 要在 C# 中读取 XLSX 文件而不使用 Interop,可以使用 IronXL 库。安装 IronXL 后,可以使用 WorkBook.Load() 方法加载 Excel 工作簿并访问其内容。 如何在 C# 中加载 Excel 工作簿? 可以在 C# 中通过调用 WorkBook.Load('yourfile.xlsx') 使用 IronXL 加载 Excel 工作簿,这将打开指定的文件以供操作。 有哪些方法可以用于访问 Excel 文件中的工作表? 在 IronXL 中,可以通过名称或索引使用 GetWorkSheet 方法以及 DefaultWorkSheet 或 First 等属性访问工作表。 如何用 C# 操作 Excel 工作表中的数据? 可以在 C# 中使用 IronXL 操作 Excel 工作表中的数据,通过 ws['A1'].ToString() 这样的语法访问单元格值(用于字符串),或 ws['B1'].Int32Value(用于整数),并在单元格范围内应用函数如 Sum。 可以在 C# 中对 Excel 数据进行聚合操作吗? 是的,IronXL 允许在 C# 中使用指定单元格范围上的 Sum()、Min() 和 Max() 方法对 Excel 数据执行聚合操作。 能否将 Excel 工作表转换为 DataTable? 是的,可以在 C# 中使用 IronXL 的 ToDataTable() 方法将 Excel 工作表转换为 DataTable,并且可以选择将第一行作为列名处理。 如何在 C# 中将 Excel 工作簿用于 DataSet? 使用 IronXL,可以通过调用 ToDataSet() 方法将 Excel 工作簿用作 DataSet,从而实现全面的数据操作。 在 C# 中使用库进行 Excel 文件操作有哪些优势? 使用 IronXL 在 C# 中进行 Excel 文件操作提供了简便和高效的优点,支持各种 Excel 格式,能够对数据进行操作,并提供将工作表转换为 DataTable 等功能。 在哪里可以找到更多关于使用 IronXL 的资源? 您可以在 IronXL 的 API 参考页面找到更多资源和文档,其中包含有关其功能、类和方法的详细信息。 Curtis Chau 立即与工程团队聊天 技术作家 Curtis Chau 拥有卡尔顿大学的计算机科学学士学位,专注于前端开发,精通 Node.js、TypeScript、JavaScript 和 React。他热衷于打造直观且美观的用户界面,喜欢使用现代框架并创建结构良好、视觉吸引力强的手册。除了开发之外,Curtis 对物联网 (IoT) 有浓厚的兴趣,探索将硬件和软件集成的新方法。在空闲时间,他喜欢玩游戏和构建 Discord 机器人,将他对技术的热爱与创造力相结合。 准备开始了吗? Nuget 下载 1,738,553 | Version: 2025.11 刚刚发布 免费 NuGet 下载 总下载量:1,738,553 查看许可证