gpt4 book ai didi

datetime - 使用golang时间包丢失个位数小时数为0

转载 作者:IT王子 更新时间:2023-10-29 01:22:56 26 4
gpt4 key购买 nike

我正在尝试格式化一系列日期,例如:

  • 2013 年 3 月 12 日,下午 3 点 看起来像:2013-03-12-15.txt
  • 2013 年 3 月 12 日,凌晨 4 点 看起来像:2013-03-12-4.txt

使用 golang 和 Time包裹

package main

import (
"time"
"fmt"
)

const layout = "2006-01-02-15.txt"

func main() {
t := time.Date(2013, time.March, 12, 4, 0, 0, 0, time.UTC)
fmt.Println(t.Format(layout))
}

不幸的是,在个位数小时前添加了一个零:2013-03-12-04.txt

是否有一种惯用的方法来达到所需的输出,或者我必须使用 String 包对自己进行一些调整?

在此先感谢您的帮助!

最佳答案

如果您需要 24 小时格式并且不希望 hour < 10 的前导零我只看到自定义字符串格式:

date := fmt.Sprintf("%d-%d-%d-%d", t.Year(), t.Month(), t.Day(), t.Hour())

当然不是 Go 中格式化日期的惯用方式。

更新(感谢评论):

t := time.Now() 
date := fmt.Sprintf("%s-%d.txt", t.Format("2006-01-02"), t.Hour())
fmt.Println(date)

关于datetime - 使用golang时间包丢失个位数小时数为0,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23428033/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com