日本免费高清视频-国产福利视频导航-黄色在线播放国产-天天操天天操天天操天天操|www.shdianci.com

學(xué)無先后,達(dá)者為師

網(wǎng)站首頁 編程語言 正文

golang中time包時(shí)間處理

作者:abcnull 更新時(shí)間: 2023-07-06 編程語言

文章目錄

  • time 包

time 包

UTC or CST

utc 是世界協(xié)調(diào)時(shí)間(標(biāo)準(zhǔn)),cst 是中央標(biāo)準(zhǔn)時(shí)間

當(dāng)UTC時(shí)間為0點(diǎn)時(shí),中國CST時(shí)間要加 8h,即為8點(diǎn)AM

當(dāng)UTC時(shí)間為0點(diǎn)時(shí),美國CST時(shí)間要減 6h,即為18點(diǎn)PM

返回 Time 時(shí)間類型

// 返回當(dāng)前時(shí)間 Time 類型
now := time.Now()
fmt.Printf("%v", now)
// 輸出
2022-05-29 19:47:46.435119 +0800 CST m=+0.000401431

// 返回指定時(shí)間的 Time 類型 UTC 時(shí)間
date := time.Date(2022, 1, 2, 3, 4, 5, 0, time.UTC)
fmt.Printf("%v", date)
// 輸出
2022-01-02 03:04:05 +0000 UTC

拿到 Time 中年月日時(shí)分秒類型

// 返回具體年月日時(shí)分秒
date := time.Date(2022, 1, 2, 3, 4, 5, 0, time.UTC)
fmt.Printf("%v,%v,%v,%v,%v,%v", date.Year(), date.Month(), date.Day(), date.Hour(), date.Minute(), date.Second())
// 輸出
2022,January,2,3,4,5

格式化 Time 類型輸出

// 格式化 Time 類型輸出,返回 string
date := time.Date(2022, 1, 2, 3, 4, 5, 0, time.UTC)
fmt.Println(date.Format("2006-1-2 15:04:05"))
// 輸出
2022-1-2 03:04:05

求兩個(gè) Time 時(shí)間差

// 求兩個(gè) Time 時(shí)差 Duration
date1 := time.Date(2022, 1, 2, 3, 4, 5, 0, time.UTC)
date2 := time.Date(2022, 1, 2, 4, 5, 6, 0, time.UTC)
diff := date2.Sub(date1)
fmt.Printf("%v", diff)
// 輸出
1h1m1s

// diff.Hours() 或者 diff.Minutes() 或者 diff.Seconds() 可以把這個(gè) Duration 完全轉(zhuǎn)成時(shí)或分或秒

把時(shí)間字符串解析成一種格式

// 把時(shí)間 string 解析成一種格式,返回 Time, error
date, _ := time.Parse("2006-01-02 15:04:05", "2022-01-02 03:04:05")
fmt.Printf("%v", date)
// 輸出
2022-01-02 03:04:05 +0000 UTC

unix時(shí)間戳

// 當(dāng)前時(shí)間 Time 類型轉(zhuǎn) int64 時(shí)間戳秒級
now := time.Now()
ts := now.Unix()
nts := now.UnixNano()
fmt.Printf("%v", ts)
fmt.Printf("%v", nts)
// 輸出
1653827591
1653827591000000000

// 時(shí)間戳秒級 轉(zhuǎn) Time。Unix 函數(shù)第一個(gè)參數(shù)是 sec,第二個(gè)參數(shù) nsec
date := time.Unix(1653827353, 0)
fmt.Printf("%v", date)
// 輸出
2022-05-29 20:29:13 +0800 CST

// 時(shí)間戳秒級 轉(zhuǎn) Time。1s = 1e3 ms,1ms = 1e6 ns
date := time.Unix(0, 1653827353e9)
fmt.Printf("%v", date)
// 輸出
2022-05-29 20:29:13 +0800 CST

原文鏈接:https://abcnull.blog.csdn.net/article/details/125036130

  • 上一篇:沒有了
  • 下一篇:沒有了
欄目分類
最近更新