Определение последнего дня в заданном месяце с использованием Time.Time
При работе с временными данными часто необходимо определить последний день данного месяца. Независимо от того, содержит ли месяц 28, 29 (в високосные годы) или 30 или 31 день, это может усложнить задачу.
Пакет времени
Пакет Go time предоставляет удобное решение с помощью функции даты. Синтаксис даты:
func Date(year int, month Month, day, hour, min, sec, nsec int, loc *Location) Time
Чтобы получить последний день в месяц, мы можем нормализовать дату, установив день равным 0. Это автоматически скорректирует фактическое количество дней в месяце.
Например, чтобы получить последний день января 2016 года:
package main
import (
"fmt"
"time"
)
func main() {
// January, 29th
t, _ := time.Parse("2006-01-02", "2016-01-29")
// Get year and month components
y, m, _ := t.Date()
// Normalize date to get last day of month
lastday := time.Date(y, m 1, 0, 0, 0, 0, 0, time.UTC)
fmt.Println(lastday.Date())
}
````
Output:
31 января 2016 г.
Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.
Copyright© 2022 湘ICP备2022001581号-3