c#如何使用NPOI来替换Excel里特定单元格的值
时间: 2024-03-21 14:39:41 浏览: 133
C# NPOI操作Excel
3星 · 编辑精心推荐
使用 NPOI 库,你可以轻松地读取和修改 Excel 文件。以下是一个简单的示例代码,演示如何使用 NPOI 替换 Excel 中特定单元格的值:
```csharp
using NPOI.SS.UserModel;
using NPOI.XSSF.UserModel; // 如果你使用的是 .xlsx 格式的 Excel 文件
// 打开 Excel 文件
string filePath = "path_to_your_excel_file";
using (FileStream fileStream = new FileStream(filePath, FileMode.Open, FileAccess.ReadWrite))
{
IWorkbook workbook = new XSSFWorkbook(fileStream);
ISheet sheet = workbook.GetSheetAt(0); // 获取第一个工作表
// 遍历每个单元格,替换特定值
for (int rowIndex = sheet.FirstRowNum; rowIndex <= sheet.LastRowNum; rowIndex++)
{
IRow row = sheet.GetRow(rowIndex);
if (row != null)
{
for (int cellIndex = row.FirstCellNum; cellIndex < row.LastCellNum; cellIndex++)
{
ICell cell = row.GetCell(cellIndex);
if (cell != null && cell.CellType == CellType.String && cell.StringCellValue == "old_value")
{
cell.SetCellValue("new_value");
}
}
}
}
// 保存 Excel 文件
fileStream.Seek(0, SeekOrigin.Begin);
workbook.Write(fileStream);
}
```
在这个示例代码中,我们打开 Excel 文件并获取第一个工作表。然后,我们遍历每个单元格,并检查其值是否等于 "old_value"。如果是,则将其替换为 "new_value"。最后,我们保存 Excel 文件并关闭文件流。
请注意,你需要在项目中添加对 NPOI 库的引用才能使用它。此外,如果你使用的是 .xls 格式的 Excel 文件,你需要使用 HSSFWorkbook 而不是 XSSFWorkbook。
阅读全文