Npoi追加excel数据
时间: 2023-09-29 11:03:22 浏览: 45
使用NPOI库追加Excel数据可以使用以下步骤:
1. 打开Excel文件并定位到要追加数据的Sheet页:
```csharp
using (var fileStream = new FileStream(filePath, FileMode.Open, FileAccess.ReadWrite))
{
var workbook = new XSSFWorkbook(fileStream);
var sheet = workbook.GetSheet(sheetName);
// 定位到追加数据的行位置
var rowIndex = sheet.LastRowNum + 1;
// ...
}
```
2. 创建要追加的数据行并设置单元格的值:
```csharp
var row = sheet.CreateRow(rowIndex);
row.CreateCell(0).SetCellValue("value1");
row.CreateCell(1).SetCellValue("value2");
// ...
```
3. 保存Excel文件:
```csharp
fileStream.Position = 0;
workbook.Write(fileStream);
fileStream.Flush();
```
完整代码示例:
```csharp
using NPOI.XSSF.UserModel;
using NPOI.SS.UserModel;
using System.IO;
public void AppendExcelData(string filePath, string sheetName, object[] data)
{
using (var fileStream = new FileStream(filePath, FileMode.Open, FileAccess.ReadWrite))
{
var workbook = new XSSFWorkbook(fileStream);
var sheet = workbook.GetSheet(sheetName);
// 定位到追加数据的行位置
var rowIndex = sheet.LastRowNum + 1;
// 创建要追加的数据行并设置单元格的值
var row = sheet.CreateRow(rowIndex);
for (int i = 0; i < data.Length; i++)
{
row.CreateCell(i).SetCellValue(data[i].ToString());
}
// 保存Excel文件
fileStream.Position = 0;
workbook.Write(fileStream);
fileStream.Flush();
}
}
```
注意:使用NPOI库操作Excel文件时,需要根据Excel文件的格式选择对应的Workbook类型,如XSSFWorkbook用于操作.xlsx文件,HSSFWorkbook用于操作.xls文件。同时,要确保Excel文件已经被释放,否则会出现文件被占用的异常。