tôi đã có thể thực hiện điều này bằng cách sử dụng một thư viện JodaTime trong dự án của tôi. Tôi đi ra với mã này.
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;
}
Điều này sẽ kiểm tra xem Khoảng thời gian giữa datetime1 và datetime2 có lớn hơn 20 phút hay không. Thay đổi thuộc tính thành Giây. Nó sẽ dễ dàng hơn cho bạn biết. Điều này sẽ trả về false.
Nguồn
2012-08-28 08:07:41
Bạn có thể muốn sử dụng 'DateTime.UtcNow' thay vì' DateTime.Now' để tránh các vấn đề với thay đổi thời gian tiết kiệm ánh sáng ban ngày khi đồng hồ có thể nhảy lùi hoặc tiến. –
@Hightechrider: Sử dụng 'UtcNow' chỉ hữu ích nếu dấu thời gian so sánh là UTC! – Gabe
@Gabe, rõ ràng là có, nhưng chuyển đổi thời gian bắt đầu thành UTC và so sánh nó sẽ tốt hơn so với 'DateTime.Now' bởi vì nếu không bạn có thể nhận được các tình huống trong đó một giờ dường như đã trôi qua khi không có! –