建设好的网站怎么分享,jexus wordpress,室内设计师接私单的app,滨州网站设计C# NPOI 是一个基于 .NET Framework 的 Excel 和 Word 操作库。它不仅可以读取和写入 Excel 和 Word 文件#xff0c;还可以对 Excel 和 Word 文件进行格式化和样式编辑#xff0c;支持多种常见的文件格式#xff0c;如XLS#xff0c;XLSX等。本篇文章将针对C# NPOI操作Exc…C# NPOI 是一个基于 .NET Framework 的 Excel 和 Word 操作库。它不仅可以读取和写入 Excel 和 Word 文件还可以对 Excel 和 Word 文件进行格式化和样式编辑支持多种常见的文件格式如XLSXLSX等。本篇文章将针对C# NPOI操作Excel进行举例详解。
1.引用 NPOI 库
使用 NuGet 包管理器引用 NPOI 库打开开发环境Visual Studio的管理控制面板选择 NuGet 程序包管理器并在搜索栏中搜索 NPOI 包然后添加到项目中。
2.创建或打开 Excel 文件
使用 C# NPOI 提供的 HSSFWorkbook 类创建一个新的 Excel 文件如下所示
//创建新的Excel
HSSFWorkbook workbook new HSSFWorkbook();
//获取工作簿
HSSFSheet sheet1 (HSSFSheet)workbook.CreateSheet(Sheet1);我们也可以使用 C# NPOI 提供的 FileStream 类打开一个现有的 Excel 文件如下所示
FileStream file new FileStream(test.xls, FileMode.Open);
HSSFWorkbook workbook new HSSFWorkbook(file);3.写入数据到 Excel 文件
使用 C# NPOI 提供的 HSSFRow 和 HSSFCell 类我们可以按顺序写入单元格数据到 Excel 文件如下所示
HSSFRow row1 (HSSFRow)sheet1.CreateRow(0);
HSSFCell cellA1 (HSSFCell)row1.CreateCell(0);
cellA1.SetCellValue(Name);
HSSFCell cellB1 (HSSFCell)row1.CreateCell(1);
cellB1.SetCellValue(Age);在该示例中我们创建了一个新的行和两个列 A1 和 B1并分别将 Name 和 Age 字符串值写入单元格。
对于数值类型的数据我们可以使用以下代码将其写入单元格
HSSFRow row2 (HSSFRow)sheet1.CreateRow(1);
HSSFCell cellA2 (HSSFCell)row2.CreateCell(0);
cellA2.SetCellValue(1);
HSSFCell cellB2 (HSSFCell)row2.CreateCell(1);
cellB2.SetCellValue(20);在该示例中我们创建了另一行和两个列 A2 和 B2并将整数值 1 和 20 分别写入单元格。
4.设置单元格样式
使用 C# NPOI 提供的 HSSFFont 和 HSSFCellStyle 类我们可以设置单元格样式如下所示
//创建字体
HSSFFont font (HSSFFont)workbook.CreateFont();
font.FontHeightInPoints 12;
font.Boldweight (short)FontBoldWeight.Bold;
//创建样式
HSSFCellStyle style (HSSFCellStyle)workbook.CreateCellStyle();
style.Alignment HorizontalAlignment.Center;
style.VerticalAlignment VerticalAlignment.Center;
//应用样式和格式到单元格
cellA1.CellStyle style;
cellA1.SetCellValue(姓名);在该示例中我们创建了一个字体对象并设置字体高度和粗细然后创建一个样式对象并设置水平和垂直对齐属性最后将样式应用到单元格 A1 中。
5.保存 Excel 文件
使用 C# NPOI 提供的 HSSFWorkbook.Write 方法我们可以将创建的 Excel 工作簿保存到指定的文件路径如下所示
//打开或创建工作簿
HSSFWorkbook workbook new HSSFWorkbook();
//获取Sheet1工作表
HSSFSheet sheet1 (HSSFSheet)workbook.CreateSheet(Sheet1);
//写入数据
//设置样式
//保存工作簿到文件
using (FileStream file new FileStream(test.xls, FileMode.Create))
{workbook.Write(file);
}在该示例中我们使用 FileStream 将 Excel 工作簿保存到 test.xls 文件对于已存在的文件可以使用 FileMode.OpenOrCreate 选项打开或创建文件。
在数据量较大的情况下使用 NPOI 的代码编写容易出现问题如在插入单元格时遇到的重复单元格值从而产生逻辑冲突。需要注意的是建议在大型数据集的情况下您可以考虑使用 GridView 控件和 DataSet 来显示和加载数据然后将数据导出到 Excel 文件。
总结在C# NPOI操作Excel我们需要引用相应的 NPOI 库对于常见的 Excel 操作包括创建或打开文件、写入数据到文件、设置单元格格式和样式、保存文件等这些操作在 NPOI 中都得到了很好的支持。