这个是比较简单的需求,直接上代码:
//将年月日字符串转换成具体的年月日
public static Date StringToDate(String dateStr) {
if (StringUtils.isEmpty(dateStr)) {
throw new SelfDefinitionException(20001, "日期不能为空,添加失败!");
}
Date parse = new Date();
ParsePosition pos = new ParsePosition(0);
if (dateStr.contains("日")) {
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy年MM月dd日");
parse = simpleDateFormat.parse(dateStr, pos);
} else if (dateStr.contains("月")) {
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy年MM月");
parse = simpleDateFormat.parse(dateStr, pos);
} else if (dateStr.contains("年")) {
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy年");
parse = simpleDateFormat.parse(dateStr, pos);
}
if (parse == null) {
throw new SelfDefinitionException(20001, "故障时间填写不规范!");
}
return parse;
}
这个可以写成工具类的形式,进行使用,此外以上的代码可能会得到为null 的情况,即传入的字符串参数不为空,并且不是规则的日期类型,比如不是下面的形式:x年、x年x月、x年x月x日
以上就是将字符串转换成日期形式的代码,希望对你有帮助,此外如果要存入数据库的date类型,可能中间还要进行一次日期格式转换,使用代码:
faultInfo.setFaultTime(new java.sql.Date(date.getTime()));
学习之所以会想睡觉,是因为那是梦开始的地方。
ଘ(੭ˊᵕˋ)੭ (开心) ଘ(੭ˊᵕˋ)੭ (开心)ଘ(੭ˊᵕˋ)੭ (开心)ଘ(੭ˊᵕˋ)੭ (开心)ଘ(੭ˊᵕˋ)੭ (开心)
------不写代码不会凸的小刘