雷达智富

首页 > 内容 > 程序笔记 > 正文

程序笔记

.NET6 使用NPOI操作Excel的方法

2024-09-26 44

在 .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 文件。你可以根据需要进一步扩展和调整代码以满足你的具体需求。同时,请注意在实际项目中要适当地处理异常和资源释放。

更新于:1个月前
赞一波!

文章评论

评论问答