我想要了解两个日期之间的差异。其中一个日期是从字符串(dateEmployd)解析而另一个日期是当前日期(currentDate)。这就是我为获取日期所做的工作......
public static Date getActiveService(String DtEmplydString){
SimpleDateFormat ft = new SimpleDateFormat("yyyy-MM-dd");//formater for parsed String date
Date dateEmployd, currentDate,periodDifference = null;
try{
dateEmployd = ft.parse(DtEmplydString);
currentDate = new Date();
}catch(ParseException e){
JOptionPane.showMessageDialog(null, e);
}
return periodDifference;
}
现在,我打算返回periodDifference,但我不知道如何找到两个日期(dateEmployd和currentDate)之间的差异,并以数年或数天或两者的组合显示它。
请大家帮忙。提前谢谢......
答案 0 :(得分:0)
long diff = date2.getTime() - date1.getTime();
答案 1 :(得分:0)
查看jodatime库。他们有像
这样的功能DateTime dateEmployd = DateTimeFormat.forPattern("yyyy-MM-dd").parse(DtEmplydString);
Years.yearsBetween(dateEmployd, DateTime.now())
Days.days Between,Seconds,Hours等相同。
答案 2 :(得分:0)
您可以尝试使用Java.Calendar作为日期函数,因为不推荐使用Date。 以下是Cdate比较器的示例
Calendar start = Calendar.getInstance();
start.setTime(from ( your initial Date object here ) );
Calendar end = Calendar.getInstance();
end.setTime(new Date());
int actualDays = start.compareTo(end);