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

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

如何在Go中解析毫秒以來的時間戳字符串?

如何在Go中解析毫秒以來的時間戳字符串?

Go
慕婉清6462132 2021-05-13 21:22:56
自從紀元以來,我有一個毫秒數的字符串(它最初來自java.lang.System.currentTimeMillis()通話)。在Go中將此字符串轉換為人類可讀的時間戳字符串的正確方法是什么?看一下時間包,我看到了該Parse函數,但是布局似乎都是基于正常時區的時間。一旦進入Time對象,就可以Format(Time.Stamp)用來獲取所需的輸出,但是我不清楚如何將字符串轉換為Time對象。
查看完整描述

3 回答

?
三國紛爭

TA貢獻1804條經驗 獲得超7個贊

該接受的答案會為一些日期范圍不工作,在未來太遠或太遙遠的過去,因為只有在有限的時間范圍可以使用64位(加上或減去大紀元300年)來描述。


這將適用于以毫秒為單位的整個范圍:


var Epoch = time.Unix(0, 0)


func ParseMillisecondUnixTimestamp(s string) (time.Time, error) {

    ts, err := strconv.Atoi(s)

    if err != nil {

        return time.Time{}, err

    }


    return Epoch.Add(time.Duration(ts) * time.Millisecond), nil

}


查看完整回答
反對 回復 2021-05-24
?
紅糖糍粑

TA貢獻1815條經驗 獲得超6個贊

使用time.Unix(ms/1000, 0)就可以了。

首先使用眾所周知的關系將ms-timestamp轉換為unix-timestamp 1 s = 1000 ms,然后將結果用作time.Unix函數的第一個參數


查看完整回答
反對 回復 2021-05-24
  • 3 回答
  • 0 關注
  • 472 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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