在 .NET 6 中,你可以使用 NPOI 库来操作 Excel 文件。NPOI 是一个用于处理 Office 文档(包括 Excel)的开源库,它提供了丰富的功能和 API,可以让你在 .NET 中轻松地读取和写入 Excel 文件。
以下是一个简单的示例,演示了如何在 .NET 6 中使用 NPOI 来读取和写入 Excel 文件:
首先,你需要确保你的项目中引用了 NPOI 库。你可以在 NuGet 包管理器中搜索并安装 NPOI 包。
读取 Excel 文件
using NPOI.SS.UserModel;
using NPOI.XSSF.UserModel; // 如果是xlsx格式的Excel
public void ReadExcel(string filePath)
{
using (FileStream fs = new FileStream(filePath, FileMode.Open, FileAccess.Read))
{
IWorkbook workbook = new XSSFWorkbook(fs); // 如果是xlsx格式的Excel
ISheet sheet = workbook.GetSheetAt(0); // 获取第一个工作表
for (int row = 0; row <= sheet.LastRowNum; row++)
{
IRow currentRow = sheet.GetRow(row);
if (currentRow != null) // 确保行不为空
{
for (int col = 0; col < currentRow.LastCellNum; col++)
{
Console.Write(currentRow.GetCell(col) + "\t"); // 读取单元格的值
}
Console.WriteLine();
}
}
}
}
写入 Excel 文件
using NPOI.SS.UserModel;
using NPOI.XSSF.UserModel; // 如果是xlsx格式的Excel
public void WriteExcel(string filePath)
{
IWorkbook workbook = new XSSFWorkbook(); // 创建新的工作簿
ISheet sheet = workbook.CreateSheet("Sheet1"); // 创建一个工作表
for (int row = 0; row < 5; row++)
{
IRow currentRow = sheet.CreateRow(row); // 创建新行
for (int col = 0; col < 5; col++)
{
ICell cell = currentRow.CreateCell(col); // 创建单元格
cell.SetCellValue($"Row {row + 1}, Col {col + 1}"); // 设置单元格的值
}
}
using (FileStream fs = new FileStream(filePath, FileMode.Create, FileAccess.Write))
{
workbook.Write(fs); // 保存工作簿到文件
}
}
上述示例演示了如何在 .NET 6 中使用 NPOI 库来读取和写入 Excel 文件。你可以根据需要进一步扩展和调整代码以满足你的具体需求。同时,请注意在实际项目中要适当地处理异常和资源释放。