Date.getTime()返回毫秒自1月1日,1970年Unixtime是自1月1日,1970秒我通常不代碼在Java中,但我工作的一些bug修復。我有:獲得「unixtime」在Java中
Date now = new Date();
Long longTime = new Long(now.getTime()/1000);
return longTime.intValue();
有沒有更好的方式來獲得java的unixtime?
UPDATE
基於約翰·M的建議下,我結束了:
return (int) (System.currentTimeMillis()/1000L);
既然你將其轉換爲一個int,你已經推出了2038年問題(Y2K相當於用於Unix)。那時Unix時代已經達到了20億美元,並且翻到負值。解決的辦法是轉移到64位Unix。 Java的等價物就是讓它長久。 – 2009-04-30 03:16:45
是的,我意識到這一點。與這個接口連接的代碼需要一個32位int的unixtime。 – 2009-04-30 04:37:28
2038即將推出。 – Pacerier 2012-01-13 10:17:04