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

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

為什么當日期早于 1900 年時,時間包具有不同的行為?

為什么當日期早于 1900 年時,時間包具有不同的行為?

Go
躍然一笑 2022-08-30 21:41:54
我嘗試使用golang的時間包從SQL服務器格式化一些帶有時區的日期,但發現:package mainimport (    "time"    "fmt")func main() {    loc, _ := time.LoadLocation("Asia/Shanghai")    endTime1 := time.Date(1, 1, 17, 23, 59, 59, 999*int(time.Millisecond), loc)    fmt.Printf("format string 1 : %s\n", endTime1.UTC().Format("2006-01-02T15:04:05.000Z"))        endTime2 := time.Date(2021, 1, 17, 23, 59, 59, 999*int(time.Millisecond), loc)    fmt.Printf("format string 2 : %s\n", endTime2.UTC().Format("2006-01-02T15:04:05.000Z"))}# outputformat string 1 : 0001-01-17T15:54:16.999Zformat string 2 : 2021-01-17T15:59:59.999Z輸出的“HH:mm:ss”部分不同。我終于找到了關鍵時間是1900-12-31,但沒有從源代碼或互聯網上找到任何關于那一天的線索。
查看完整描述

1 回答

?
www說

TA貢獻1775條經驗 獲得超8個贊

似乎與上海時區有關。

此頁面,您可以閱讀

1901 年 1 月 1 日 - 時區更改 (LMT → CST) 當當地標準時間即將達到 1901 年 1 月 1 日星期二時,00:00:00 時鐘向后調 0:05:43 小時到 1900 年 12 月 31 日星期一,改為當地標準時間 23:54:17。

此外,我們可以在 go 文檔中找到更多信息

夏令時轉換跳過或重復時間。例如,在美國,2011年3月13日凌晨2:15從未發生過,而2011年11月6日凌晨1點15分發生了兩次。在這種情況下,時區的選擇以及時間的選擇沒有明確定義。Date 返回在轉換中涉及的兩個區域之一中正確的時間,但它不保證哪個區域是正確的。


查看完整回答
反對 回復 2022-08-30
  • 1 回答
  • 0 關注
  • 77 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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