Java HSSF POI:如何知道单元格中的数据是否为日期类型?
目前我的代码是Java HSSF POI:如何知道单元格中的数据是否为日期类型?,java,apache-poi,poi-hssf,Java,Apache Poi,Poi Hssf,目前我的代码是 bean.setREPO_DATE(row.getCell(16).getDateCellValue()); 如果单元格在excel中的格式为日期,则效果良好 不过,它也会将某些整数或长字符(如1234或5699)转换为日期。我也知道这背后的原因 但是,我想在执行上述行之前应用一个检查。像这样的 if(row.getCell(16).isOfDateFormat){ bean.setREPO_DATE(row.getCell(16).getDateCellValue()); }
bean.setREPO_DATE(row.getCell(16).getDateCellValue());
如果单元格在excel中的格式为日期,则效果良好
不过,它也会将某些整数或长字符(如1234或5699)转换为日期。我也知道这背后的原因
但是,我想在执行上述行之前应用一个检查。像这样的
if(row.getCell(16).isOfDateFormat){
bean.setREPO_DATE(row.getCell(16).getDateCellValue());
}
请引导我
提前谢谢 试试这个
使用导入org.apache.poi.ss.usermodel.DateUtil代码>
if(DateUtil.isCellDateFormatted(cell))
{
cell.getDateCellValue();
}
很抱歉,我在发布问题@Abhishek Singh之前已经搜索过了:它并不完全是重复的(尽管你可以在那个答案中找到api。我取消了我的投票),谢谢它为我工作。您能告诉我如何检查单元格中的值是百分比还是正常数字吗?java.lang.IllegalStateException:如果单元格类型为Strings,则无法从字符串单元格中获取数值您需要先检查它是否为数字,然后再检查它是否为日期。判断数字是日期还是数字的唯一方法是查看其样式。但是你必须先确定它是一个数字。从对我类似[问题]的回答来看。作者:真怀疑论者。(stackoverflow.com/questions/60155480/…)。有人可以编辑这个,这样“问题”一词就指向我的问题@塞松