Rumah >pembangunan bahagian belakang >Golang >Bagaimana untuk mencipta julat tarikh dalam format YYYY-MM-DD dari awal hingga akhir di Golang?

Bagaimana untuk mencipta julat tarikh dalam format YYYY-MM-DD dari awal hingga akhir di Golang?

WBOY
WBOYke hadapan
2024-02-12 18:00:071159semak imbas

Bagaimana untuk mencipta julat tarikh dalam format YYYY-MM-DD dari awal hingga akhir di Golang?

Isi soalan

Andaikan input kita ialah start_date=2022-01-01end_date=2022-01-05. Bagaimanakah saya boleh mendapatkan input seperti ini:

2022-01-01
2022-01-02
2022-01-03
2022-01-04

Saya boleh menggunakan time.parse 解析开始和结束,并使用 .sub untuk mendapatkan bilangan hari di antaranya, kemudian ulangi julat dan buat tarikh rentetan. Saya tertanya-tanya sama ada terdapat cara untuk mencipta julat tarikh dalam go atau penyelesaian yang lebih baik?

Penyelesaian

Anda boleh menggunakan:

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))
    }
}

Ini akan memberi anda:

2022-01-01
2022-01-02
2022-01-03
2022-01-04

Contoh Penuh

Atas ialah kandungan terperinci Bagaimana untuk mencipta julat tarikh dalam format YYYY-MM-DD dari awal hingga akhir di Golang?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:stackoverflow.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam