尽管添加了dateformatter,但无法从数字单元格中获取文本值

时间:2016-01-19 13:56:09

标签: java selenium-webdriver apache-poi poi-hssf hssf

无法从数字单元格中获取文本值。

使用的日期格式化程序,它没有用。

也转换为字符串。那也行不通。

if(isCellEmpty(sheet.getRow(i).getCell(j)))
{   
    System.out.println("Phone Number field is empty " +i +" " +j +" ================================================>");
    break;
}
else {     
    DataFormatter formatter = new DataFormatter();
    Cell cell = sheet.getRow(i).getCell(j);
    String pass = formatter.formatCellValue(cell);
    Thread.sleep(2000);   

   /*Cell cell = sheet.getRow(i).getCell(j);
   double a=(double) cell.getNumericCellValue();
   String n=Double.toString(a);*/

   driver.findElement(Appointment.PhoneNumber).sendKeys(pass);
}

接下来我该怎么做?

1 个答案:

答案 0 :(得分:0)

您可以尝试这样

    for(int i=0; i<sheet.getLastRowNum(); i++){

        Row row =sheet.getRow(i);

          for(int j=0; j<row.getLastCellNum(); j++){

              Cell cell=row.getCell(j);

              if(cell==null){
                  System.out.println("null cell at row " +i +" cell no "+j);
              }

                if(cell.getCellType()==Cell.CELL_TYPE_STRING){


                    System.out.println(cell.getStringCellValue());
                }

                if(cell.getCellType()==Cell.CELL_TYPE_NUMERIC){

                    System.out.println(String.valueOf(cell.getNumericCellValue()));
                }

                if(cell.getCellType()==Cell.CELL_TYPE_BLANK){

                     System.out.println("blank cell at row " +i +" cell no "+j);
                }
          }
    }

我只是打印了单元格值,如果需要请将它们捕获到字符串中,并可以在webdriver命令中使用。

由于