我需要創建一個具有澳大利亞時區的java.util.Date對象。這個對象是在下游組件中使用的標籤庫所必需的(所以我被Date卡住了)。將日曆轉換爲java.util.Date的問題
這是我嘗試:
TimeZone timeZone = TimeZone.getTimeZone("Australia/Sydney");
GregorianCalendar defaultDate = new GregorianCalendar(timeZone);
Date date = defaultDate.getTime();
然而, 「日期」 總是返回當前的本地時間(在我的情況,ET)。我在這裏做錯了什麼?是否有可能使用不同的時區設置Date對象?
更新:
感謝您的迴應!如果我想輸出格式化的日期作爲字符串,但這不工作,如果我想返回一個日期對象。例如:
Date d = new Date();
DateFormat df = new SimpleDateFormat();
df.setTimeZone(TimeZone.getTimeZone("Australia/Sydney"));
String formattedDate = df.format(d); // returns Sydney date/time
Date myDate = df.parse(formattedDate); // returns local time(ET)
我想我最終將會重新調整我們最新的taglib。
[如何使用Java來處理日曆時區?(http://stackoverflow.com/questions/230126/how-to-handle-calendar-timezones-using-java) – duffymo 2010-11-09 02:17:01