go時間和日期轉換

package main

import (
    "fmt"
    "time"
)

func main() {
    //獲取當前時間戳
    timestamp := time.Now().Unix()
    fmt.Println("現在的時間戳是:", timestamp)
    //打印  現在的時間戳是: 1611932225

    // go語言固定日期模版解讀
    //             year  month  day   hour         minute   second
    //              06    01    02   03(15-12)       04        05
    timeLayout := "2006-01-02 15:04:05" // go語言固定日期模版
    timeStr := time.Unix(timestamp, 0).Format(timeLayout)
    fmt.Println("時間戳轉日期格式一:", timeStr)
    //打印 時間戳轉日期格式一: 2021-01-29 22:57:05

    timeLayout2 := "2006/01/02 15:04:05" // go語言固定日期模版
    timeStr2 := time.Unix(timestamp, 0).Format(timeLayout2)
    fmt.Println("時間戳轉日期格式二:", timeStr2)
    //打印 時間戳轉日期格式二: 2021/01/29 22:57:05

    //日期轉時間戳 (將2019-11-27 19:07:41轉爲時間戳)
    newTimeStamp := time.Date(2021, 01, 29, 19, 36, 41, 0, time.Local).Unix()
    fmt.Println("將2019-11-27 19:07:41 轉爲時間戳:", newTimeStamp)
    // 打印 將2019-11-27 19:07:41 轉爲時間戳: 1611920201

    //1小時後的時間戳
    time2 := time.Now().Add(time.Hour)
    timestamp2 := time2.Unix()
    fmt.Println("1小時後的時間戳:", timestamp2)
    //打印 1小時後的時間戳: 1611935825
    
    //1小時前的時間戳
    m, _ := time.ParseDuration("-1h")
    result := time.Now().Add(m).Unix()
    fmt.Println("1小時前的時間戳:", result)
    //打印 1小時前的時間戳: 1611928625
    
    //獲取今天0點0時0分的時間戳
    currentTime := time.Now()
    earlyMorningTime := time.Date(currentTime.Year(), currentTime.Month(), currentTime.Day(), 0, 0, 0, 0, currentTime.Location()).Unix()
    fmt.Println("當天凌晨0時0分0秒的時間戳:", earlyMorningTime)
    //打印 當天凌晨0時0分0秒的時間戳: 1611849600

}

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章