当前位置:编程学习 > C#/ASP.NET >>

NPOI读取excel中含有空行出错的问题

用nopi读取excel,excel中含有空行(原来有数据,但是被删掉了,表面上看没有任何数据,但是会被认定行有操作,会被读取),此时出错。代码如下
//根据路径通过已存在的excel来创建HSSFWorkbook,即整个excel文档
HSSFWorkbook workbook = new HSSFWorkbook(stream);

//获取excel的第一个sheet
//HSSFSheet sheet = workbook.GetSheetAt(0) as HSSFSheet;
ISheet sheet = workbook.GetSheetAt(0);

DataTable table = new DataTable();
//获取sheet的首行
//HSSFRow headerRow = sheet.GetRow(0) as HSSFRow;
IRow headerRow = sheet.GetRow(0);

//一行最后一个方格的编号 即总的列数
int cellCount = headerRow.LastCellNum;

for (int i = headerRow.FirstCellNum; i < cellCount; i++)
{
DataColumn column = new DataColumn(headerRow.GetCell(i).StringCellValue);
table.Columns.Add(column);
}
//最后一列的标号  即总的行数
int rowCount = sheet.LastRowNum;
for (int i = (sheet.FirstRowNum + 1); i < rowCount; i++)
{
//HSSFRow row = sheet.GetRow(i) as HSSFRow;
IRow row = sheet.GetRow(i);
if (row != null)
{
DataRow dataRow = table.NewRow();

for (int j = row.FirstCellNum; j < cellCount; j++)
{
if (row.GetCell(j) == null)
{
dataRow[j] = row.GetCell(j).ToString();
}
}

table.Rows.Add(dataRow);
}
}
workbook = null;
sheet = null;

return table;
Excel NPOI
补充:.NET技术 ,  C#
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,