Lire le champ de la date d'excel avec Java

J'essaie de lire une valeur Date d'une feuille Excel dans un code java en utilisant:

 DateUtil.isCellDateFormatted(cell) 

Mais il lance une exception indiquant que l' cannot read text from a numeric field .

Aucune suggestion?

Vous pouvez vérifier ceci à l'aide de la suite, puis utiliser selon vos besoins.

 if(cell.getCellType()==Cell.CELL_TYPE_NUMERIC){ if (DateUtil.isCellDateFormatted(cell)) { System.out.println(cell.getDateCellValue()); } else { System.out.println(cell.getNumericCellValue()); } } 

La méthode DateUtil.isCellDateFormatted suppose que vous avez déjà vérifié que la cellule est une valeur numérique. Voir le code http://grepcode.com/file/repo1.maven.org/maven2/org.openl.rules/org.openl.lib.poi.dev/5.8.0/org/apache/poi/ss/usermodel /DateUtil.java#DateUtil.isCellDateFormatted%28org.apache.poi.ss.usermodel.Cell%29

Puisque Excel stocke les dates en tant que nombres en interne, vérifiez que la cellule est numériquement première et vérifiez s'il s'agit d'une date.

Ensuite, vous pouvez get la valeur de la date réelle avec ceci ou quelque chose de similaire:

 Date date = HSSFDateUtil.getJavaDate(cell.getNumberValue());