从 Golang 中的日期获取该月的第几周

问题描述 投票:0回答:1

我想获取从日期开始的当前月份的周数

我用过 isoWeek()

func (t Time) ISOWeek() (year, week int)

但它是一年中的返回周数,而且我也使用了像这样的另一种方法

now := time.Now()
beginningOfTheMonth := time.Date(now.Year(), now.Month(), 1, 1, 1, 1, 1, time.UTC)
_, thisWeek := now.ISOWeek()
_, beginningWeek := beginningOfTheMonth.ISOWeek()

fmt.Printf(" %d week in the month", (1 + thisWeek - beginningWeek))

当日期为 2022 年 12 月 16 日时,它返回“3”。

有什么解决方案或解决方案吗?

datetime go time go-gorm
1个回答
0
投票

我相信一个月的 ISO 周是包含星期四的周。 2022 年 12 月 1 日是星期四。所以这个月有 5 周。

© www.soinside.com 2019 - 2024. All rights reserved.