欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Golang時(shí)間及時(shí)間戳的獲取轉(zhuǎn)換超全面詳細(xì)講解

 更新時(shí)間:2022年12月16日 11:44:42   作者:Dorgan  
說實(shí)話,golang的時(shí)間轉(zhuǎn)化還是很麻煩的,最起碼比php麻煩很多,下面這篇文章主要給大家介紹了關(guān)于golang時(shí)間/時(shí)間戳的獲取與轉(zhuǎn)換的相關(guān)資料,文中通過實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下

獲取時(shí)間

獲取當(dāng)前時(shí)間

package main
import (
        "fmt"
        "time"
)
func main() {
   currentTime := time.Now()                  //當(dāng)前時(shí)間
   currentYear := time.Now().Year()        //當(dāng)前年
   currentMonth := time.Now().Month()       //當(dāng)前月
   currentDay := time.Now().Day()         //當(dāng)前日
   currentHour := time.Now().Hour()        //當(dāng)前小時(shí)小時(shí)
   currentMinute := time.Now().Minute()      //當(dāng)前分鐘
   currentSecond := time.Now().Second()      //當(dāng)前秒
   currentNSecond := time.Now().Nanosecond()  //當(dāng)前納秒
   //打印結(jié)果
   fmt.Println("當(dāng)前時(shí)間是:", currentTime)
   fmt.Println("當(dāng)前年:", currentYear)
   fmt.Println("當(dāng)前月:", currentMonth)
   fmt.Println("當(dāng)前日:", currentDay)
   fmt.Println("當(dāng)前小時(shí):", currentHour)
   fmt.Println("當(dāng)前分鐘:", currentMinute)
   fmt.Println("當(dāng)前秒:", currentSecond)
   fmt.Println("當(dāng)前納秒:", currentNSecond)

結(jié)果輸出

當(dāng)前時(shí)間是: 2022-04-22 16:42:44.1160954 +0800 CST m=+0.004795301
當(dāng)前年: 2022
當(dāng)前月: April
當(dāng)前日: 22
當(dāng)前小時(shí): 16
當(dāng)前分鐘: 42
當(dāng)前秒: 44
當(dāng)前納秒: 150022700

獲取之前/之后的時(shí)間

獲取1分鐘之前的時(shí)間戳

package main
import (
    "fmt"
    "time"
)
func main() {
    currentTime := time.Now()
    m, _ := time.ParseDuration("-1m")
    result := currentTime.Add(m)
    fmt.Println(result)
}

說明

  • time.ParseDuration 將傳入的"-1m"轉(zhuǎn)換為“持續(xù)時(shí)間”類型(time.Duration),輸出為-0h1m0s
  • 之后Add() 可對(duì)其和時(shí)間進(jìn)行計(jì)算

結(jié)果輸出

2022-04-22 16:43:20.9844622 +0800 CST m=-59.994691699

獲取一小時(shí)之前的時(shí)間

方法同上,持續(xù)時(shí)間可如下轉(zhuǎn)換:time.ParseDuration(“-1h”)

package main
import (
    "fmt"
    "time"
)
func main() {
    currentTime := time.Now()
    m, _ := time.ParseDuration("-1h")
    result := currentTime.Add(m)
    fmt.Println(result)
}

結(jié)果輸出

2022-04-22 15:47:01.9977133 +0800 CST m=-3599.992986699

獲取1小時(shí)后的時(shí)間

方法同上,持續(xù)時(shí)間可如下轉(zhuǎn)換:ime.ParseDuration(“1h”)

package main
import (
    "fmt"
    "time"
)
func main() {
    currentTime := time.Now()
    m, _ := time.ParseDuration("1h")
    result := currentTime.Add(m)
    fmt.Println(result)
}

結(jié)果輸出

2022-04-22 17:50:58.3395738 +0800 CST m=+3600.004424801

獲時(shí)間戳

獲取當(dāng)前時(shí)間戳

package main
import (
    "fmt"
    "time"
)
func main() {
    fmt.Printf("時(shí)間戳(秒):%v;\n", time.Now().Unix())
    fmt.Printf("時(shí)間戳(納秒):%v;\n",time.Now().UnixNano())
    fmt.Printf("時(shí)間戳(毫秒):%v;\n",time.Now().UnixNano() / 1e6)
    fmt.Printf("時(shí)間戳(納秒轉(zhuǎn)換為秒):%v;\n",time.Now().UnixNano() / 1e9)
}

輸出結(jié)果

時(shí)間戳(秒):1650617834;

時(shí)間戳(納秒):1650617834110539400;

時(shí)間戳(毫秒):1650617834110;

時(shí)間戳(納秒轉(zhuǎn)換為秒):1650617834;

時(shí)間轉(zhuǎn)時(shí)間戳

package main
import (
    "fmt"
    "time"
)
func main() {
    timeStamp := time.Date(2022, 5, 20, 13, 14, 0, 0, time.Local).Unix()
    fmt.Println("時(shí)間轉(zhuǎn)時(shí)間戳:",timeStamp)
}

結(jié)果輸出

時(shí)間轉(zhuǎn)時(shí)間戳: 1653023640

時(shí)間戳轉(zhuǎn)時(shí)間

package main
import (
    "fmt"
    "time"
)
func main() {
    timeStr := time.Unix(1650617834, 0)
    fmt.Println(timeStr)
}

結(jié)果輸出

2022-04-22 16:57:14 +0800 CST

按模板格式化輸出

注意:模板格式里的時(shí)間不能隨意更改

package main
import (
    "fmt"
    "time"
)
func main() {
    timeLayout := "2006-01-02 15:04:05"
    timeStr := time.Unix(1653023640, 0).Format(timeLayout)
    fmt.Println(timeStr)
}

結(jié)果輸出

2022-05-20 13:14:00

題外話:獲取當(dāng)前時(shí)間的年月日時(shí)分秒的拼接(月日等補(bǔ)足到兩位)

now := time.Now()
nowSecond := strconv.Itoa(now.Year()) + fmt.Sprintf("%02d", now.Month()) + fmt.Sprintf("%02d", now.Day()) + fmt.Sprintf("%02d", now.Hour()) + fmt.Sprintf("%02d", now.Minute()) + fmt.Sprintf("%02d", now.Second())

結(jié)果輸出

20221209103544

到此這篇關(guān)于Golang時(shí)間及時(shí)間戳的獲取轉(zhuǎn)換超全面詳細(xì)講解的文章就介紹到這了,更多相關(guān)Golang時(shí)間戳內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 使用Go進(jìn)行單元測試的實(shí)現(xiàn)

    使用Go進(jìn)行單元測試的實(shí)現(xiàn)

    這篇文章主要介紹了使用Go進(jìn)行單元測試的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-11-11
  • go語言中fallthrough的用法說明

    go語言中fallthrough的用法說明

    這篇文章主要介紹了go語言中fallthrough的用法說明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2021-05-05
  • 最新評(píng)論