如何创建基于天的时间戳

我需要编写一个函数,以秒为单位获取时间戳并将其转换为基于天的时间戳。例如,时间戳1584875408(22/03/2020 11:10am) 和1584872571(22/03/2020 10:22am) 都应转换为1584835200(22/03/2020 12:00am)。


我想出了以下功能。除此之外它不起作用,我认为还有一种更聪明的方法来实现所描述的行为。


func formatTimestamp(t int64) (int64, error) {

    timestamp := time.Unix(t, 0)


    day := timestamp.Format("2006-01-02")


    formatted, err := time.Parse(day, "2006-01-02")

    if err != nil {

        return 0, err

    }


    return formatted.Unix(), nil

}


func main() {

    t, _ := formatTimestamp(1584873099)

    fmt.Println(t)

}


开满天机
浏览 69回答 1
1回答

千巷猫影

问题是你把关于 的论点搞混了time.Parse。它应该是:formatted, err := time.Parse("2006-01-02", day)
打开App,查看更多内容
随时随地看视频慕课网APP