Как идентифицировать ячейку, является пустой или нулевой или пустой при чтении файла Excel
Я прочитал файл Excel, чтобы передать ввод для некоторых полей данных. Но когда я запускаю программу, некоторые значения ячеек возвращаются как нулевые, а некоторые - как пустые. Физически, когда я открываю файл Excel, в ячейке не появляется никаких значений.
Как я могу определить вручную, что ячейка Excel пуста или пуста?
Для некоторых сценариев мне нужно передать пустые значения в поля. Если ячейка пуста, я не могу передать значения в поля.
Направь меня, чтобы протянуть руку.
Код:
public static void readAllData() throws IOException{
Object result = null;
String sheetName = "Testsheet";
String filePathxlsx = "C:/Users/MSTEMP/Documents/Files/Testxssf.xlsx";
try
{
FileInputStream in = new FileInputStream(filePathxlsx);
File file = new File(filePathxlsx);
if(file.isFile() && file.exists()){
XSSFWorkbook xworkbook = new XSSFWorkbook(in);
XSSFSheet xsheet=xworkbook.getSheet(sheetName);
int totalRows = xsheet.getLastRowNum();
for(int row =1; row<totalRows;row++){
xrow=xsheet.getRow(row);
int totalCells=xrow.getLastCellNum();
for(int cell =0; cell<totalCells;cell++){
if(xrow != null)
{
xcell= xrow.getCell(cell);
if(xcell!=null)
{
switch (xcell.getCellType()) {
case Cell.CELL_TYPE_NUMERIC:// numeric value in excel
if(DateUtil.isCellDateFormatted(xcell)){
Date myDate = xcell.getDateCellValue();
SimpleDateFormat formatter = new SimpleDateFormat("dd/MM/yyyy", Locale.US);
result = formatter.format(myDate);
//System.out.println("Today : " + result);
}
else{
result = new BigDecimal(xcell.getNumericCellValue()).toPlainString();
}
break;
case Cell.CELL_TYPE_STRING: // string value in excel
result = xcell.getStringCellValue();
break;
case Cell.CELL_TYPE_BOOLEAN: // boolean value in excel
result = xcell.getBooleanCellValue();
break;
case Cell.CELL_TYPE_BLANK: // blank value in excel
result = xcell.getStringCellValue();
break;
case Cell.CELL_TYPE_ERROR: // Error value in excel
result = xcell.getErrorCellValue()+"";
break;
}
}
else
{
System.out.println("Cell is empty");
}
System.out.println("Value "+result);
}
else
{
System.out.println("Row is empty");
}
}
}
}
inputStream.close();
}
catch (Exception ex){
ex.printStackTrace();
}
}