首頁 > 後端開發 > Golang > 如何在Golang中建立從開始到結束的YYYY-MM-DD格式的日期範圍?

如何在Golang中建立從開始到結束的YYYY-MM-DD格式的日期範圍?

WBOY
發布: 2024-02-12 18:00:07
轉載
1158 人瀏覽過

如何在Golang中建立從開始到結束的YYYY-MM-DD格式的日期範圍?

問題內容

假設我們的輸入是start_date=2022-01-01end_date=2022-01-05。我如何獲得如下輸入:

2022-01-01
2022-01-02
2022-01-03
2022-01-04
登入後複製
登入後複製

我可以使用 time.parse 解析開始和結束,並使用 .sub 來取得中間的天數,然後迭代範圍並建立字串日期。 我想知道在 go 中是否有創建日期範圍的方法或更好的解決方案?

解決方法

您可以使用:

const (
    layout = "2006-01-02"
)

func main() {
    startdate, _ := time.parse(layout, "2022-01-01")
    enddate, _ := time.parse(layout, "2022-01-05")

    for date := startdate; date.before(enddate); date = date.adddate(0, 0, 1) {
        fmt.println(date.format(layout))
    }
}
登入後複製

這會給你:

2022-01-01
2022-01-02
2022-01-03
2022-01-04
登入後複製
登入後複製

完整範例

以上是如何在Golang中建立從開始到結束的YYYY-MM-DD格式的日期範圍?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:stackoverflow.com
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板