Jak uzyskać prawidłową liczbę godzin między datami Jody?
Chcę dostać wszystkoCzas letni (DST) godziny między dwiema datami.
To jest mój przykładowy kod:
public static void main(String[] args) {
Date startDate = new Date();
Calendar startCalendar = Calendar.getInstance();
startCalendar.setTime(startDate);
startCalendar.set(2014, 2, 1, 0, 0, 0);
startCalendar.set(Calendar.MILLISECOND, 0);
Date endDate = new Date();
Calendar endCalendar = Calendar.getInstance();
endCalendar.setTime(endDate);
endCalendar.set(2014, 2, 31, 0, 0, 0);
endCalendar.set(Calendar.MILLISECOND, 0);
DateTime startDateTime = new DateTime(startCalendar);
DateTime endDateTime = new DateTime(endCalendar).plusDays(1);
Hours hours = Hours.hoursBetween(startDateTime, endDateTime);
// actual is 744
System.out.println("Expected: 743, actual: " + hours.getHours());
}
Cóż, oczywiście czegoś mi brakuje, ale nie mogę zauważyć mojego błędu.