如何使用 yyyyMMddHHmmss 格式格式化当前时间?

新手上路,请多包涵

我正在尝试使用这种格式格式化当前时间 yyyyMMddHHmmss

 t := time.Now()
fmt.Println(t.Format("yyyyMMddHHmmss"))

即输出:

 yyyyMMddHHmmss

有什么建议么?

原文由 sergserg 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 1.9k
2 个回答

利用

fmt.Println(t.Format("20060102150405"))

因为 Go 使用以下常量来格式化日期,请参考 这里

const (
    stdLongMonth      = "January"
    stdMonth          = "Jan"
    stdNumMonth       = "1"
    stdZeroMonth      = "01"
    stdLongWeekDay    = "Monday"
    stdWeekDay        = "Mon"
    stdDay            = "2"
    stdUnderDay       = "_2"
    stdZeroDay        = "02"
    stdHour           = "15"
    stdHour12         = "3"
    stdZeroHour12     = "03"
    stdMinute         = "4"
    stdZeroMinute     = "04"
    stdSecond         = "5"
    stdZeroSecond     = "05"
    stdLongYear       = "2006"
    stdYear           = "06"
    stdPM             = "PM"
    stdpm             = "pm"
    stdTZ             = "MST"
    stdISO8601TZ      = "Z0700"  // prints Z for UTC
    stdISO8601ColonTZ = "Z07:00" // prints Z for UTC
    stdNumTZ          = "-0700"  // always numeric
    stdNumShortTZ     = "-07"    // always numeric
    stdNumColonTZ     = "-07:00" // always numeric
    stdFracSecond0    = ".0", ".00" // trailing zeros included
    stdFracSecond9    = ".9", ".99" // trailing zeros omitted
)

原文由 Cris 发布,翻译遵循 CC BY-SA 4.0 许可协议

当您找到“golang 当前时间格式”时,这个问题会出现在 Google 搜索的顶部,因此,对于所有想要使用其他格式的人,请记住您可以随时致电:

 t := time.Now()

t.Year()

t.Month()

t.Day()

t.Hour()

t.Minute()

t.Second()

例如,要将当前日期时间获取为“YYYY-MM-DDTHH:MM:SS”(例如 2019-01-22T12:40:55),您可以将这些方法与 fmt.Sprintf 结合使用:

 t := time.Now()
formatted := fmt.Sprintf("%d-%02d-%02dT%02d:%02d:%02d",
        t.Year(), t.Month(), t.Day(),
        t.Hour(), t.Minute(), t.Second())

一如既往,请记住文档是最好的学习来源: https ://golang.org/pkg/time/

原文由 Luis Cabrera Benito 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题