文章目录
前言介绍
npoi介绍
NPOI. NPOI是指构建在POI 3.x版本之上的一个程序,NPOI可以在没有安装Office的情况下对Word或Excel文档进行读写操作。. NPOI是一个开源的C#读写Excel、WORD等微软OLE2组件文档的项目。.
1.读取excel数据
public IWorkbook RWorkbook = null;
/// <summary>
/// 获取读取 WorkBook
/// </summary>
public void GetReadWorkbook(string excelPath)
{
// 获取扩展名
string _extensionName = System.IO.Path.GetExtension(excelPath);
// 文件流
FileStream _fs= new FileStream(excelPath, FileMode.Open, FileAccess.ReadWrite);
// 把xls写入workbook中 2003版本
if (_extensionName .Equals(".xls"))
{
RWorkbook = new HSSFWorkbook(_fs);
}
// 把xlsx 写入workbook中 2
else if (_extensionName .Equals(".xlsx"))
{
RWorkbook = new XSSFWorkbook(_fs);
}
else
{
RWorkbook = null;
Console.WriteLine("此文件非excel文件,无法读取数据");
}
_fs.Close();
}
1.1 读取sheet表
/// <summary>
/// 获取表中的Sheet名称
/// </summary>
public List<ISheet> Sheets = null;
/// <summary>
/// 获取所有 Sheet表
/// </summary>
public void GetSheets()
{
// 获取表
Sheets = new List<ISheet>();
var _sheetCount = RWorkbook.NumberOfSheets;
for (int i = 0; i < _sheetCount; i++)
{
Sheets.Add(RWorkbook.GetSheetAt(i));
}
}
1.2 获取sheet数据
/// <summary>
/// 获取 Sheet 表数据
/// </summary>
/// <param name="sheet"></param>
private void GetSheetData(ISheet sheet)
{
IRow _row;
//从第一行开始获取数据
for (int i = 0; i <= sheet.LastRowNum; i++)
{