温馨提示×

C#如何读取Excel的多个工作表

c#
小樊
154
2024-09-02 17:08:42
栏目: 编程语言

要在C#中读取Excel的多个工作表,可以使用第三方库,例如EPPlus、NPOI或Microsoft.Office.Interop.Excel

  1. 首先,通过NuGet包管理器安装EPPlus库。在Visual Studio中,依次点击“工具”>“NuGet包管理器”>“管理解决方案的NuGet包”,然后搜索并安装“EPPlus”。

  2. 在你的项目中添加以下命名空间:

using System.IO;
using OfficeOpenXml;
  1. 使用以下代码读取Excel文件的多个工作表:
public void ReadExcelSheets(string filePath)
{
    // 打开Excel文件
    using (FileStream fs = new FileStream(filePath, FileMode.Open, FileAccess.Read))
    {
        // 创建一个Excel包
        using (ExcelPackage excelPackage = new ExcelPackage(fs))
        {
            // 获取所有工作表
            ExcelWorksheets worksheets = excelPackage.Workbook.Worksheets;

            // 遍历所有工作表
            foreach (var worksheet in worksheets)
            {
                Console.WriteLine($"正在读取工作表: {worksheet.Name}");

                // 遍历工作表中的所有行和列
                for (int row = worksheet.Dimension.Start.Row; row <= worksheet.Dimension.End.Row; row++)
                {
                    for (int col = worksheet.Dimension.Start.Column; col <= worksheet.Dimension.End.Column; col++)
                    {
                        // 读取单元格值
                        object cellValue = worksheet.Cells[row, col].Value;
                        Console.Write($"{cellValue}\t");
                    }
                    Console.WriteLine();
                }
                Console.WriteLine();
            }
        }
    }
}
  1. 调用ReadExcelSheets方法,传入Excel文件路径:
string filePath = @"C:\path\to\your\excel\file.xlsx";
ReadExcelSheets(filePath);

这样,你就可以读取Excel文件的多个工作表了。请注意,这个示例仅适用于.xlsx格式的文件。如果你需要处理.xls格式的文件,可以使用NPOI库。

0