我正在使用包含日期列的POI阅读Excel表格。我想检查日期的正确性,例如,如果在Excel中输入的日期是05/45/2015。现在没有一个月有45天了。我想知道有没有内置的方法。
这没有打印无效日期
if(DateUtil.isCellDateFormatted(cell))
{
System.out.println("cell value-->"+cell.getDateCellValue());
}
else{
System.out.println("invalid date");
}
此代码将日期06/45/2015转换为2015年6月30日
SimpleDateFormat sdf = new SimpleDateFormat("MM/dd/YYYY");
String s = sdf.format(cell.getDateCellValue());
System.out.println(s);
我不想要这样的转换。
答案 0 :(得分:0)
你可以SimpleDateFormat
上课
//String date = "05/45/2015";
String date = DateFormatter.formatCellValue(cell);
DateFormat df = new SimpleDateFormat("MM/dd/yyyy");
try {
Date d= df.parse(date);
//if you didnt get any exception then date is in correct format
}catch (Exception e) {
//date not in correct format
return false;
}
答案 1 :(得分:0)
这可能会对你有所帮助。您可以尝试DateUtil.isCellDateFormatted(Cell) - 这将返回一个布尔值,告诉您单元格的格式字符串是否代表数据。