Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/68.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java HSSF POI:如何知道单元格中的数据是否为日期类型?_Java_Apache Poi_Poi Hssf - Fatal编程技术网

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/…)。有人可以编辑这个,这样“问题”一词就指向我的问题@塞松