2012-11-02 32 views
0

有沒有更新日期時間路徑的方法? 我試過Date.setTime(),但它也取代了日期路徑。我有任何Java方法或唯一的方法是設置小時,分鐘,秒和毫秒?僅限更新時間

謝謝

+0

我沒有方法方便,但我建議存儲Date對象,並從那裏開始改變。 – ATaylor

+0

_Date的時間path_和_Date的日期path_是什麼意思? –

+0

@IqbalDjulfri是 – nKognito

回答

4

Java Date只是一個圍繞long的包裝,它計算從時代(1970年1月1日)開始的時間。更加靈活的是Calendar。您可以創建一個CalendarDate

Date date = . . .; 
Calendar cal = new GregorianCalendar(); 
cal.setTime(date); 

然後你可以設置Calendar的各個領域:

cal.set(Calendar.HOUR_OF_DAY, 8); 
// etc. 
+0

+1擊敗了我 – MadProgrammer

+0

@MadProgrammer - Snap! –

+0

cal.setDate(date);未定義。只有cal.setTime(日期)可用。 –

3

我會從java.util.Date完全移開開始。理想情況下,使用Joda Time,因爲它是一個更強大的日期/時間庫。

否則,您應該使用java.util.Calendar。 A java.util.Date不是特定的日期/時間,直到您決定您感興趣的時區爲止 - 它僅代表即時及時,全世界不同的人會認爲是不同的日期和時間的一天。

1

你會想看看java.util.Calender

它將允許您更改日期/時間的個別部分。

Calendar cal = Calender.getInstance(); 
cal.setTime(date); 
cal.set(Calender.HOUR, hour); 

此外,作爲已經被提出,我會看看Joda Time