winform 使用NPOI读取EXCEL的多个SHEET
时间: 2024-10-09 20:02:44 浏览: 9
在Windows Form应用程序中,NPOI是一个用于.NET平台操作Microsoft Office文件格式的强大库,包括Excel。如果你需要从一个Excel工作簿中读取多个sheet,你可以按照以下步骤操作:
1. 引入所需的NuGet包:首先,在项目中安装NPOI库,可以通过NuGet管理器搜索并添加`NPOI`和`NPOI.Excel`。
```csharp
using NPOI;
using NPOI.HSSF;
using NPOI.SS.UserModel;
```
2. 加载Excel文件:创建HSSFWorkbook对象,它表示整个Excel文档。
```csharp
string filePath = "your_excel_file.xlsx";
var workbook = new HSSFWorkbook(File.Open(filePath));
```
3. 遍历Sheet:使用`workbook.GetSheetAt(index)`获取指定索引位置的Sheet,`workbook.NumberOfSheets`获取总共有多少个Sheet。
```csharp
for (int i = 0; i < workbook.NumberOfSheets; i++)
{
ISheet sheet = workbook.GetSheetAt(i);
// 对每个sheet进行操作...
}
```
4. 读取数据:对于每个Sheet,可以遍历行和列来读取单元格的数据。
```csharp
foreach (ISheet sheet in workbook)
{
IRow row;
foreach (row in sheet)
{
for (int j = 0; j < row.LastCellNum; j++)
{
Cell cell = row[j];
string cellValue = cell.ToString();
// 打印或处理cell值
}
}
}
```
5. 关闭工作簿:完成后记得关闭它以释放资源。
```csharp
workbook.Close();
```