您可能需要爲UTC設置的DateFormat對象(不遵守夏令時),使用設置爲UTC的日曆也可以簡化相當多的事情。
public static void main(String[] args) {
TimeZone utc = TimeZone.getTimeZone("UTC");
Calendar date = Calendar.getInstance(utc);
DateFormat format = DateFormat.getDateTimeInstance();
format.setTimeZone(utc);
date.set(2012, 02, 24, 23, 00, 00);
for (int i = 0; i < 10; i++) {
System.out.println(format.format(date.getTime()));
date.add(Calendar.HOUR_OF_DAY, 1);
}
}
這提供了以下的輸出:
Mar 24, 2012 11:00:00 PM
Mar 25, 2012 12:00:00 AM
Mar 25, 2012 1:00:00 AM
Mar 25, 2012 2:00:00 AM
Mar 25, 2012 3:00:00 AM
Mar 25, 2012 4:00:00 AM
Mar 25, 2012 5:00:00 AM
Mar 25, 2012 6:00:00 AM
Mar 25, 2012 7:00:00 AM
Mar 25, 2012 8:00:00 AM
當然,你可以使用格式來格式化你的約會,只要你喜歡。
你需要時區,我相信只有美國人關心夏令時。 – Woot4Moo
'但我需要「Sun 3月25日02:00:00」。我該如何創建該日期?'爲什麼不直接打印該字符串?該日期在所有時區都不存在。 – Falmarri
我必須將Date ojbect傳遞給一個不關心時區的函數。 – tyranitar