udało mi się tego dokonać przy użyciu JodaTime biblioteki w moim projekcie. Wyszedłem z tym kodem.
String datetime1 = "2012/08/24 05:22:34";
String datetime2 = "2012/08/24 05:23:28";
DateTimeFormatter format = DateTimeFormat.forPattern("yyyy/MM/dd HH:mm:ss");
DateTime time1 = format.parseDateTime(datetime1);
DateTime time2 = format.parseDateTime(datetime2);
Minutes Interval = Minutes.minutesBetween(time1, time2);
Minutes minInterval = Minutes.minutes(20);
if(Interval.isGreaterThan(minInterval)){
return true;
}
else{
return false;
}
Spowoduje to sprawdzenie, czy przedział czasu między datetime1 i datetime2 to GreaterThan 20 Minutes. Zmień właściwość na Sekundy. Będzie ci łatwiej poznać. To zwróci false.
Możesz chcieć użyć 'DateTime.UtcNow' zamiast' DateTime.Now', aby uniknąć problemów ze zmianami czasu letniego, kiedy zegar może przeskoczyć do tyłu lub do przodu. –
@Hightechrider: Użycie 'UtcNow' jest przydatne tylko wtedy, gdy znacznik czasu porównania znajduje się w UTC! – Gabe
@Gabe, oczywiście tak, ale konwertowanie czasu startowego na UTC i porównywanie go będzie lepsze niż porównanie z 'DateTime.Now', ponieważ w przeciwnym razie można uzyskać sytuacje, w których upłynęła godzina, gdy nie minęła! –