NPOI 是 Apache POI 项目的 .NET 版本,它提供了读写Excel和Word等Office文档的能力。以下是NPOI的一些核心概念和使用方法。
安装NPOI
通过NuGet包管理器安装NPOI:
Install-Package NPOI
创建Excel文档
创建一个新的Excel文件:
using NPOI.XSSF.UserModel;
using NPOI.SS.UserModel;
using System.IO;
IWorkbook workbook = new XSSFWorkbook(); // 或者 HSSFWorkbook(), 取决于你需要的Excel版本
ISheet sheet = workbook.CreateSheet("MySheet");
IRow row = sheet.CreateRow(0);
ICell cell = row.CreateCell(0);
cell.SetCellValue("Hello, NPOI!");
using (FileStream stream = new FileStream("HelloWorld.xlsx", FileMode.Create, FileAccess.Write))
{
workbook.Write(stream);
}
读取Excel文档
读取一个现有的Excel文件:
using NPOI.XSSF.UserModel;
using NPOI.SS.UserModel;
using System.IO;
IWorkbook workbook = new XSSFWorkbook(new FileStream("HelloWorld.xlsx", FileMode.Open, FileAccess.Read));
ISheet sheet = workbook.GetSheetAt(0);
IRow row = sheet.GetRow(0);
ICell cell = row.GetCell(0);
string value = cell?.ToString();
格式化单元格
设置单元格的格式:
cell.SetCellValue(123.45);
cell.CellStyle.DataFormat = HSSFDataFormat.GetBuiltinFormat("#,##0.00");
cell.CellStyle.BorderTop = BorderStyle.Thin;
cell.CellStyle.BorderLeft = BorderStyle.Thin;
cell.CellStyle.BorderRight = BorderStyle.Thin;
cell.CellStyle.BorderBottom = BorderStyle.Thin;
添加数据
向工作表添加数据:
IRow row = sheet.CreateRow(rowIndex);
ICell cell = row.CreateCell(cellIndex);
cell.SetCellValue("Some data");
操作公式
在Excel中使用公式:
IRow row = sheet.CreateRow(0);
ICell cell = row.CreateCell(0);
cell.SetCellFormula("SUM(B1:B10)");
保存Excel文档
保存工作簿:
using (FileStream stream = new FileStream("ModifiedHelloWorld.xlsx", FileMode.Create, FileAccess.Write))
{
workbook.Write(stream);
}
workbook.Close();
注意事项
- NPOI 支持Excel 2003 (.xls) 和 Excel 2007+ (.xlsx) 格式。
- 在处理大文件或大量数据时,应注意资源管理,确保及时释放文件流和工作簿资源。
- NPOI 的 API 设计与 Apache POI 相似,如果您熟悉 Java 的 POI 库,那么使用 NPOI 将会比较容易。
通过这些基础知识,您可以开始使用 NPOI 在C#中进行Excel文档的读写操作。随着实践的深入,您将能够更熟练地利用 NPOI 提供的各种功能来处理复杂的Office文档。
本文暂时没有评论,来添加一个吧(●'◡'●)