我正在嘗試使用Java讀取CST時區中的系統日期。我嘗試了下面的代碼,但每當我使用formatter.parse()
它都會在EST時區返回時間。使用Java在CST時區讀取系統時間
private Date getTodayInCST() {
Calendar currentdate = Calendar.getInstance();
DateFormat formatter = new SimpleDateFormat("dd-MM-yyyy HH:mm:ss");
TimeZone obj = TimeZone.getTimeZone("CST");
formatter.setTimeZone(obj);
String today = formatter.format(currentdate.getTime());
try {
return formatter.parse(today);
} catch (ParseException e) {
e.printStackTrace();
}
return null;
}
A Date沒有時區信息,所以你試圖做的事是不可能的。不過,您可以*打印*具有給定時區設置的日期。 – assylias 2014-09-10 14:20:22
可能的重複[如何設置時區的java.util.Date?](http://stackoverflow.com/questions/2891361/how-to-set-time-zone-of-a-java-util-日期) – 2014-09-10 15:46:27
它可能不會在EST中返回日期。我們現在正在C *** D *** T,其中的時間比CST晚1個小時。如果你正在閱讀的時間是CDT,那麼輸出將看起來像EST。 – 2014-09-10 15:59:59