其它時區的0時0分0秒的時間戳

2021-08-21 23:33:50 字數 1104 閱讀 7155

獲取當前時區的0時0分0秒時間戳很容易:

long current = system.currenttimemillis();

long zero = current/(1000*3600*24)*(1000*3600*24) - timezone.getdefault().getrawoffset();

但是要獲取指定時區的時分秒就比較麻煩了

1.獲取指定時區的當前時間的時間戳, 你可能會想到用

calendar

private static long getzerodate()
但是無論你指定的時區是什麼"gmt-5:00"/"gmt-9:00" ... 都會是系統預設時區的時間戳, 所以需要通過******dateformat

public static string getothertimezonetime()
先獲取時間字串, 然後在獲取時間戳, 注意不能使用同乙個******dateformat, 因為第乙個設定了時區, 第二個不能設定時區, 否則會出錯

private static long gettimenum() catch (parseexception e) 

if(date != null)

return null;

}

2.獲取指定時區的0時0分0秒時間戳

// 獲取指定時區今天零點零分零秒的毫秒數	

// 小於8點用-16

long zero=currenttime/(1000*3600*24)*(1000*3600*24)-timezone.gettimezone("gmt-16:00").getrawoffset();

// 大於8點用+8

long zero=currenttime/(1000*3600*24)*(1000*3600*24)-timezone.gettimezone("gmt+8:00").getrawoffset();

為什麼是gmt-16:00 ?, gmt+8 ?   經過測試得到的, 我也不知道為啥

C 獲取某個時間的0點0分和23點59分59秒

c 獲取某個時間的0點0分和23www.cppcns.com點59分59秒,具體 如下所示 c 獲取當月第一天和最後一天 當月第一天0時0分0秒 datetime.now.adddays 1 datetime.now.day date 當月最後一天23時59分59秒 datetime.now.add...

setTimeout的時間設為0的問題

j ascript是單執行緒執行的,當某一段 正在執行的時候,所有的後續任務都必須等待,形成乙個佇列,一旦當前任務執行完畢,再從佇列中取出下乙個任務。這常被稱為 阻塞式執行 如果 中設定乙個settimeout,那麼瀏覽器就會在合適的時候,將 插入到佇列中,如果這個時間設為0,就代表立即插入到佇列中...

神六 0 號 809秒的總指揮

這一次,郭保新是站著按下了紅色按鈕的,比起2年前的那次,他堅定了許多。2005年10月12日9 00整,中國神舟六號載人飛船準時公升空。按下發射按鈕的,就是 0 號指揮員郭保新。這已是44歲的郭保新第六次擔任 0 號指揮員,此前的神舟一號到五號,都是他出任這個職務。郭保新,出生於江蘇徐州,1986年...