下面是“C#基于NPOI操作Excel”的完整攻略:
1. 简介
NPOI是一个.NET平台下的开源组件,支持读写Office2007及以上版本(.xlsx/.docx)的Excel/Word文件。NPOI官方文档详细说明了如何在项目中使用NPOI进行对Excel文件的操作。在本文中,我们将详细介绍C#基于NPOI操作Excel的过程。
2. 安装
在Visual Studio中,右键单击Project中的“引用”,选择“管理NuGet程序包”,在搜索框中输入“NPOI”,选择最新版本进行安装。
3. 加载Excel文件
通过NPOI,我们可以轻松加载Excel文件。下面是一个简单的示例:
using NPOI.XSSF.UserModel;
using NPOI.SS.UserModel;
using System.IO;
// 读取Excel文件
FileStream fileStream = new FileStream(@"path\to\file.xlsx", FileMode.Open, FileAccess.Read);
IWorkbook workbook = new XSSFWorkbook(fileStream);
// 读取Excel表格
ISheet sheet = workbook.GetSheetAt(0);
4. 读取Excel文件数据
在得到了Excel表格之后,我们可以通过NPOI提供的API来轻松读取Excel中的数据。下面是一些简单的示例:
4.1 读取单元格数据
// 读取第1行的第1个单元格
IRow row = sheet.GetRow(0);
ICell cell = row.GetCell(0);
string cellValue = cell.ToString();
4.2 读取整行数据
// 读取第1行所有单元格数据
IRow row = sheet.GetRow(0);
List<string> rowValues = new List<string>();
foreach (ICell cell in row.Cells)
{
rowValues.Add(cell.ToString());
}
4.3 读取整列数据
// 读取第1列所有单元格数据
List<string> columnValues = new List<string>();
for (int i = sheet.FirstRowNum; i <= sheet.LastRowNum; i++)
{
IRow row = sheet.GetRow(i);
ICell cell = row.GetCell(0);
columnValues.Add(cell.ToString());
}
5. 写入Excel文件数据
除了读取Excel文件数据之外,我们也可以使用NPOI来写入Excel文件数据。
5.1 创建Excel表格
// 创建Excel表格
IWorkbook workbook = new XSSFWorkbook();
ISheet sheet = workbook.CreateSheet("Sheet1");
IRow row = sheet.CreateRow(0);
ICell cell = row.CreateCell(0);
cell.SetCellValue("Hello World!");
// 保存Excel文件
FileStream fileStream = new FileStream(@"path\to\file.xlsx", FileMode.Create, FileAccess.Write);
workbook.Write(fileStream);
fileStream.Close();
5.2 写入单元格数据
// 更新第1行的第1个单元格
IRow row = sheet.GetRow(0);
ICell cell = row.GetCell(0);
cell.SetCellValue("Hello World!");
5.3 写入多行数据
// 写入多行数据
List<string> datas = new List<string>() { "foo", "bar", "baz" };
for (int i = 0; i < datas.Count; i++)
{
IRow row = sheet.CreateRow(i);
ICell cell = row.CreateCell(0);
cell.SetCellValue(datas[i]);
}
以上就是使用C#基于NPOI操作Excel的完整攻略。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:C#基于NPOI操作Excel - Python技术站