формат даты java apache poi и обработка пустых ячеек - PullRequest
0 голосов
/ 26 декабря 2011
XSSFWorkbook workbook07 = new XSSFWorkbook(xlname);                     
XSSFSheet sheet1 = workbook07.getSheet(sheetname);
CellReference cvalue = new CellReference("E11"); 
Row nrow = sheet1.getRow(cvalue.getRow());
Cell cell = (nrow.getCell(cvalue.getCol());

когда я пытаюсь получить значение даты 1/9/2009 из ячейки, это означает, что оно возвращается в каком-то формате, например 1-oct-2009. мне нужно получить точный формат даты, который когда-либо находился в ячейке, и распечатать его как вывод .. это означает, что мне нужно указать как 1/9/2009.

и я должен спросить еще один, используя это, если я пытаюсь получить значения пустой ячейки, возвращая исключение null.pointer .. возвращаемое исключение при получении значений, так что я могу обработать его

Cell cell = (nrow.getCell(cvalue.getCol());

так что я не могу справиться с этим вот так

if {cell.Cell_TYPE_}

Может ли кто-нибудь PLZ помочь мне! !!

1 Ответ

1 голос
/ 27 декабря 2011

Если вы знаете, что ячейка действительно является ячейкой Date (а не строковой ячейкой, в которой кто-то вручную набрал дату в виде String), просто вызовите Cell.getDateCellValue () , и вы вернуть объект Java Date

Вы также можете использовать DateUtil.isCellDateFormatted (cell) , если вы хотите проверить, является ли ячейка датой или нет (в Excel нет определенного типа для ячеек даты, они просто числовые ячейки со специальными правилами форматирования)

...