go - time.Time 日复一日

标签 go

我收到了一个时间戳,我想知道是否有办法将它向下舍入到太平洋标准时间一天的开始。例如 ts: 1305861602 对应于 2016-04-14, 21:10:27 -0700,但我想将其四舍五入为映射到 2016-04-14 00:00:00 -0700。我通读了 time.Time 文档,但没有找到方法。

最佳答案

执行此操作的简单方法是使用前一个创建新的 Time 并且仅指定年份月份和日期。它看起来像这样;

func truncateToDay(t time.Time) time.Time {
    return time.Date(t.Year(), t.Month(), t.Day(), 0, 0, 0, 0, t.Location())
}

这是一个游戏示例; https://play.golang.org/p/jnFuZxruKm

关于go - time.Time 日复一日,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36988681/

相关文章:

mongodb - SORT在聚合功能中不起作用

struct - Go Programming - 如何在 ExecuteTemplate 中传递两个结构

regex - 正则表达式删除所有新行的起始编号

go - 如何使用追加或不追加将更多数据添加到结构中?

json - 如何正确反序列化包含来自 JSON 的顶级数组的 RabbitMQ 消息

arrays - Golang的 "cap"

json - 为什么我从 mongodb 获取我的 json 中某些字段的所有零值?

mongodb - Golang mgo 获取空对象

linux - 在 bash 脚本中不工作“source ~/.profile”

templates - Go Template ParseFiles 函数解析多个文件