亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何在 Java 中使用 TimeZone 獲取當前時間戳

如何在 Java 中使用 TimeZone 獲取當前時間戳

RISEBY 2022-07-14 10:34:58
我想在Android中timeStamp考慮TimeZoneJava,我嘗試了很多方法,但仍然找不到解決方案。
查看完整描述

4 回答

?
一只名叫tom的貓

TA貢獻1906條經驗 獲得超3個贊

博士

使用java.time包中的ZoneId&ZonedDateTime類。

ZonedDateTime.now()  // Implicitly applies the JVM’s current default time zone.

最好明確指定您想要/預期的時區。

ZonedDateTime.now(
    ZoneId.of( "Africa/Tunis" ) )

java.time

現代方法使用java.time類,這些類在幾年前取代了可怕的遺留類,例如Timestamp、Calendar、Date、TimeZoneSimpleDateFormat。

以、或等格式指定適當的時區名稱。永遠不要使用 2-4 個字母的縮寫,例如或因為它們不是真正的時區,不是標準化的,甚至不是唯一的(?。?。Continent/RegionAmerica/MontrealAfrica/CasablancaPacific/AucklandESTIST

ZoneId z = ZoneId.of( "America/Montreal" ) ;

通過特定地區(上述時區)的人們使用的掛鐘時間捕捉當前時刻。

ZonedDateTime zdt = ZonedDateTime.now( z ) ;



查看完整回答
反對 回復 2022-07-14
?
守著一只汪

TA貢獻1872條經驗 獲得超4個贊

您可以使用此方法獲取帶有時區的時間戳:


public static long getTimestampWithGMT() {

    long timestamp = System.currentTimeMillis() / 1000;

    int offset = (TimeZone.getDefault().getRawOffset() + TimeZone.getDefault().getDSTSavings()) / 1000;


    return timestamp + offset;

}


查看完整回答
反對 回復 2022-07-14
?
縹緲止盈

TA貢獻2041條經驗 獲得超4個贊

您可以使用 Calendar.getInstance().getTimeInMillis()?它默認為設備時區,或者如果您想更改時區,您可以執行以下操作


Calendar calendar = Calendar.getInstance();

calendar.setTimeZone(TimeZone.getTimeZone("America/Los_Angeles"));

calendar.getTimeInMillis();


查看完整回答
反對 回復 2022-07-14
?
心有法竹

TA貢獻1866條經驗 獲得超5個贊

您可以使用 Calendar 類來獲取當前時間戳。然后您可以格式化此時間戳以顯示日期、日、月、年、時間等。

Calendar c = Calendar.getInstance();


查看完整回答
反對 回復 2022-07-14
  • 4 回答
  • 0 關注
  • 482 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號