C# NPOI 读EXCEL ,怎样获取工作表内总共有多少行,多少列?
时间: 2024-09-28 13:16:33 浏览: 82
在C#中使用NPOI库(HSSF或EPPlus)读取Excel文件时,获取工作表内的总行数和列数通常涉及到遍历工作表的数据区域。以下是使用HSSF和EPPlus分别获取行数和列数的方法:
**HSSF(Apache POI旧版)**:
```csharp
using org.apache.poi.ss.usermodel;
// 加载Excel文件
using (var stream = File.OpenRead(filePath))
{
using (var workbook = new HSSFWorkbook(stream))
{
// 获取第一个工作表
var sheet = workbook.GetSheetAt(0);
// 获取行数和列数
int rowCount = sheet.LastRowNum + 1; // 加1是因为索引从0开始,包括最后一行
int colCount = sheet.LastColumnNum + 1;
Console.WriteLine($"工作表有 {rowCount} 行,{colCount} 列");
}
}
```
**EPPlus(Apache POI新版)**:
```csharp
using OfficeOpenXml;
// 加载Excel文件
using (var package = ExcelPackage.Open(filePath))
{
// 获取第一个工作表
var worksheet = package.Workbook.Worksheets[0];
// 获取行数和列数
int rowCount = worksheet.Dimension.End.Row;
int colCount = worksheet.Dimension.End.Column;
Console.WriteLine($"工作表有 {rowCount} 行,{colCount} 列");
}
```
在这两个示例中,`LastRowNum`、`LastColumnNum`以及`Dimension.End.Row`和`Dimension.End.Column`属性用于计算总行数和列数。
阅读全文