java exel导入时间格式变更了数字,同时验证是否是yyyy-mm--dd格式
程序员文章站
2022-06-17 13:54:15
...
1.第一步进行数据导入
if (!"预计到位时间".equals(String.valueOf(strArray[7]))&&(!"".equals(strArray[7])&&!"null".equals(strArray[7]))) {
//输出获取到carObtainDate的值
//转换carObtainDate为Double
//将已转为Double类型的carObtainDate转为时间类型
try {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
dateString = sdf.format(HSSFDateUtil.getJavaDate(Double.parseDouble(strArray[7])));
System.out.println(dateString);
} catch (Exception e) {
// 如果throw java.text.ParseException或者NullPointerException,就说明格式不对
e.printStackTrace () ;
}
2.验证数据是否是数据格式
public boolean isValidDate(String s) {
//判断是否为第一行
if (!"预计最早到位时间(表格格式:yyyy-mm-dd)".equals(String.valueOf(s))&&(!"null".equals(s)&&!"".equals(s))) {
try {
// 指定日期格式为四位年/两位月份/两位日期,注意yyyy-MM-dd其中MM为大写
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd");
// 设置lenient为false. 否则SimpleDateFormat会比较宽松地验证日期,比如2004/02/29会被接受,并转换成2004/03/01
dateFormat.setLenient(false);
dateFormat.parse(s);
return true;
} catch (Exception e) {
// 如果throw java.text.ParseException或者NullPointerException,就说明格式不对
return false;
}
} else {
return false;
}
}
3.依赖jar