0
我班有2個屬性構成了日期:我如何判斷一個Java日期和時區是在當前時間之前?
java.util.Date date;
String timeZone;
我如何可以看到,如果這個日期是服務器上的當前時間之前?
基本上我想寫這樣的事情,但採取的timeZone考慮:內部
return date.before(new Date());
我班有2個屬性構成了日期:我如何判斷一個Java日期和時區是在當前時間之前?
java.util.Date date;
String timeZone;
我如何可以看到,如果這個日期是服務器上的當前時間之前?
基本上我想寫這樣的事情,但採取的timeZone考慮:內部
return date.before(new Date());
Calendar startCalendar = Calendar.getInstance();
int startTimeZoneOffset = TimeZone.getTimeZone(timeZone).getOffset(startDate.getTime())/1000/60;
startCalendar.setTime(startDate);
startCalendar.add(Calendar.MINUTE, startTimeZoneOffset);
Calendar nowCalendar = Calendar.getInstance();
int nowTimeZoneOffset = nowCalendar.getTimeZone().getOffset(new Date().getTime())/1000/60;
nowCalendar.setTime(new Date());
nowCalendar.add(Calendar.MINUTE, nowTimeZoneOffset);
return startCalendar.before(nowCalendar);
Date
店爲UTC,所以你timeZone
變量是沒有必要的。您可以簡單地使用Date.before(Date)
。
'Date'內部存儲爲UTC,因此您的'timeZone'變量不是必需的且令人困惑。 –
的'timeZone'是創建日期的用戶的時區。 – Brian
你是如何構建'Date'的? –