2010-01-13 25 views
1
Calendar calendar = Calendar.getInstance(); 
calendar.setTimeInMillis(0); 

這將其設置爲deafult值。我如何將它設置爲零?如何將日期對象上的時間設置爲零(00/00/00)

+3

你能解釋你爲什麼要這樣做嗎?我的意思是,你可能會問如何確定日期到11月11日;沒有像Novtober的第一個日期那樣的日期,並且類似地,沒有0/0/0這樣的日期,所以試圖讓運行時代表該日期似乎是徒勞的練習。想必你有一些理由想要做這件奇怪的事情;如果你能解釋原因,也許有人可以告訴你一個更好的方法來做到這一點。 – 2010-01-13 16:11:12

+0

我將系統日期(來自我們的內部系統)與文件中給出的日期進行比較。 – Milli 2010-01-13 16:12:30

+0

你如何嘗試比較你的日期?也許有更好的方法來做到這一點? – Mike 2010-01-13 16:19:56

回答

3

你或許應該知道什麼setTimeInMillis()預計:

public void setTimeInMillis(long millis)

給定的long值設置此Calendar的當前時間。

參數:
millis - 從紀元UTC時間毫秒的新時間。

曆元被定義爲:

在時間瞬間可由毫秒值是一個從曆元,1970年1月,00偏移來表示:00:00.000 GMT(陽曆) 。

10

您可以使用set方法將您想要的值清零。例如:

calendar.set(Calendar.HOUR, 0); 
calendar.set(Calendar.MINUTE, 0); 
calendar.set(Calendar.SECOND, 0); 
calendar.set(Calendar.MILLISECOND, 0); 
+0

這將使月份,日期和年份保持當前月份的日期和年份 – 2010-01-13 16:07:17

+0

我認爲這就是OP所要的。 – 2010-01-13 16:07:55

+0

問題是「如何將日期對象的時間設置爲零」。我誤解了嗎? – 2010-01-13 16:08:41

6

(00/00/00)不是有效日期; API不會產生這個值。

+0

只是一個例子.. – Milli 2010-01-13 16:08:55

+4

您應該在您的示例中使用有效的日期。 – 2010-01-13 17:28:09

相關問題