如果excel工作表中有一行数据,则java获取行计数
我有一个Excel表格,其中有14行。其中两行是空的。在14行中,有12行包含数据。数据可能存在于每行的任何列中。所以我想迭代每一行的单元格,如果任何单元格中都有数据,那么我需要增加j
变量
我的要求是,如果有14行,其中12行有数据,那么j
变量应该打印12
package com.optum.synergy.nav4Me.ui.stepDefinitions;
import org.apache.poi.EncryptedDocumentException;
import org.apache.poi.openxml4j.exceptions.InvalidFormatException;
import org.apache.poi.ss.usermodel.*;
import org.apache.poi.ss.util.CellAddress;
import java.io.File;
import java.io.IOException;
import java.util.Iterator;
public class ExcelSheetTest {
public static final String SAMPLE_XLSX_FILE_PATH = "C:/Users/abc/Documents/excel_test.xlsx";
public static void main(String[] args) {
System.out.println("okkk");
// Creating a Workbook from an Excel file (.xls or .xlsx)
Workbook workbook;
try {
workbook = WorkbookFactory.create(new File(SAMPLE_XLSX_FILE_PATH));
System.out.println("Workbook has " + workbook.getNumberOfSheets() + " Sheets ");
Sheet sh = workbook.getSheetAt(0);
int num1 = sh.getPhysicalNumberOfRows();
System.out.println(" " + num1);
int j = 0;
for (int i = 0; i < num1; i++) {
Row eachrow = sh.getRow(i);
for (Cell cell : eachrow) {
System.out.println("...... "+cell);
if(cell !=null){
j++ ;
break ;
}
}
}
System.out.println("Row counts :"+j);
} catch (EncryptedDocumentException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (InvalidFormatException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
// Retrieving the number of sheets in the Workbook
}
}
当前“行计数:”打印:14
我应该如何修改代码以满足我的要求
共 (0) 个答案