計算機系統里面的時間有兩個,一個叫做系統時間,一個叫做本地時間。
什么是系統時間?
就是跟那個什么子午線的地方一致的時間,計算機如果運行正常的話,世界上所有的計算機的系統時間都應該是相同的。
但是問題來了,我們有一個時區的概念,雖然所有的計算機的系統時間相同,但是他們的本地時間不一樣,
比如在那個子午線上的時間是1970-01-01 00:00:00的系統時間的時候,他的本地時間也是1970-01-01 00:00:00。
但是在這個時候的中國,處在東八區,它的本地時間比那個時間快八個小時,也就是1970-01-01 08:00:00。
注意這只是本地時間不一致,這時候在中國的計算機的系統時間,仍然是1970-01-01 00:00:00。
Date.getTime()可以得到得到1970年01月1日0點零分以來的毫秒數 -- 基於系統時間。
public static String getTimestamp_1970() throws Exception { java.text.SimpleDateFormat formater = new SimpleDateFormat( "yyyy-MM-dd HH:mm:ss"); java.util.Date date= formater.parse("1970-01-01 00:00:00"); return Long.toString(date.getTime()); }
返回 -28800000 【 ("1970-01-01 00:00:00") -- 在中國的計算機的本地時間】
public static String getTimestamp_1970() throws Exception { java.text.SimpleDateFormat formater = new SimpleDateFormat( "yyyy-MM-dd HH:mm:ss"); java.util.Date date= formater.parse("1970-01-01 08:00:00"); return Long.toString(date.getTime()); }
返回 0 【 ("1970-01-01 08:00:00") -- 在中國的計算機的本地時間】