千家信息网

C#怎么读取excel的有效行数或者最大有效列数

发表于:2024-11-21 作者:千家信息网编辑
千家信息网最后更新 2024年11月21日,本篇内容主要讲解"C#怎么读取excel的有效行数或者最大有效列数",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"C#怎么读取excel的有效行数或者最大有
千家信息网最后更新 2024年11月21日C#怎么读取excel的有效行数或者最大有效列数

本篇内容主要讲解"C#怎么读取excel的有效行数或者最大有效列数",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"C#怎么读取excel的有效行数或者最大有效列数"吧!

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

using NPOI.SS.UserModel;

using NPOI.HSSF.UserModel;

using System.IO;

namespace www.xinduofen.cn

{

class NpoiOperateExcel

{

///

/// 读取某一个excel文件的某一个工作表的有效行数或者最大有效列数

///

/// 代表excel表格保存的地址,包括"文件名.xls"

/// 代表将要读取的sheet表的索引位置

/// 为true代表读取的为:有效行数,为:false代表读取的为:最大有效列数

/// 返回值 "不为-1" 代表读取成功,否则为读取失败

public static int rowORcolAllCount(string save_address, int sheet_number, Boolean readFlag)//读取excel表格相应工作表的所有数据

{

int rowORcolCnt = -1;//初始化为-1

FileStream readfile = null;

try

{

//如果传入参数合法

if (!string.IsNullOrEmpty(save_address) && sheet_number > 0)

{

readfile = new FileStream(save_address, FileMode.Open, FileAccess.Read);

HSSFWorkbook hssfworkbook = new HSSFWorkbook(readfile);

ISheet sheet = hssfworkbook.GetSheetAt(sheet_number - 1);

if (sheet != null)

{

if (readFlag)//如果需要读取'有效行数'

{

rowORcolCnt = sheet.LastRowNum+1;//有效行数(NPOI读取的有效行数不包括列头,所以需要加1)

}

else

{ //如果需要读取'最大有效列数'

for (int rowCnt = sheet.FirstRowNum; rowCnt <= sheet.LastRowNum; rowCnt++)//迭代所有行

{

IRow row = sheet.GetRow(rowCnt);

if (row != null && row.LastCellNum > rowORcolCnt)

{

rowORcolCnt = row.LastCellNum;

}

}

}

}

}

}

catch (Exception)

{

Console.WriteLine("NpoiOperateExcel.rowOrColumnAllCount方法产生了异常!");

}

finally

{

if (readfile != null) { readfile.Close(); }

}

return rowORcolCnt;

}

}

}

到此,相信大家对"C#怎么读取excel的有效行数或者最大有效列数"有了更深的了解,不妨来实际操作一番吧!这里是网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

0