NPOI 支持 .xlsx 格式吗

作者:编程家 分类: excel 时间:2025-08-29

NPOI是一款强大的.NET库,用于处理Excel文件。它是开源的,并且提供了许多功能,使我们可以在C#中读取、写入和操作Excel文件。那么,NPOI是否支持.xlsx格式的文件呢?下面我们将详细介绍。

NPOI支持.xlsx格式

NPOI支持读取和写入.xlsx格式的Excel文件。.xlsx是一种基于XML的电子表格文件格式,是Microsoft Office 2007及更高版本中使用的默认格式。相比于旧的.xls二进制格式,.xlsx文件具有更高的可读性和可扩展性。

使用NPOI读取.xlsx文件的过程与读取.xls文件类似,只需将文件路径指定为.xlsx文件即可。同样地,我们也可以使用NPOI创建和写入.xlsx文件,只需将文件扩展名设置为.xlsx即可。

下面是一个使用NPOI读取和写入.xlsx文件的简单示例代码:

读取.xlsx文件:

csharp

using (FileStream fs = new FileStream("sample.xlsx", FileMode.Open, FileAccess.Read))

{

XSSFWorkbook workbook = new XSSFWorkbook(fs);

XSSFSheet sheet = workbook.GetSheetAt(0);

for (int row = 0; row <= sheet.LastRowNum; row++)

{

XSSFRow currentRow = sheet.GetRow(row);

for (int col = 0; col < currentRow.LastCellNum; col++)

{

string cellValue = currentRow.GetCell(col)?.ToString();

Console.WriteLine(cellValue);

}

}

}

写入.xlsx文件:

csharp

XSSFWorkbook workbook = new XSSFWorkbook();

XSSFSheet sheet = (XSSFSheet)workbook.CreateSheet("Sheet1");

for (int row = 0; row < 5; row++)

{

XSSFRow currentRow = (XSSFRow)sheet.CreateRow(row);

for (int col = 0; col < 5; col++)

{

XSSFCell cell = (XSSFCell)currentRow.CreateCell(col);

cell.SetCellValue($"Row {row}, Column {col}");

}

}

using (FileStream fs = new FileStream("output.xlsx", FileMode.Create, FileAccess.Write))

{

workbook.Write(fs);

}

NPOI是一款功能强大的.NET库,它支持读取和写入.xlsx格式的Excel文件。通过使用NPOI,我们可以轻松地在C#中处理.xlsx文件,并进行各种操作。无论是读取大量数据还是生成复杂的报表,NPOI都能满足我们的需求。

希望以上信息对您有所帮助,祝您在使用NPOI处理.xlsx文件时取得成功!