在 Go 语言(Golang)中,处理日期和时间可以通过 time
包来实现。以下是一些常见的日期和时间操作:
获取当前日期和时间:
now := time.Now()
格式化日期和时间:
now := time.Now()
formatted := now.Format("2006-01-02 15:04:05") // 2006-01-02 15:04:05 是 Go 的参考时间
解析日期和时间字符串:
t, err := time.Parse("2006-01-02", "2024-05-18")
if err != nil {
log.Fatal(err)
}
添加或减去时间:
now := time.Now()
future := now.Add(24 * time.Hour) // 添加一天
past := now.Add(-24 * time.Hour) // 减去一天
比较日期和时间:
now := time.Now()
later := now.Add(10 * time.Minute)
if now.Before(later) {
fmt.Println("现在比稍后早")
}
设置时区:
location, err := time.LoadLocation("Asia/Shanghai")
if err != nil {
log.Fatal(err)
}
now := time.Now().In(location)
获取年、月、日、时、分、秒:
now := time.Now()
year, month, day := now.Date()
hour, minute, second := now.Clock()
创建特定日期和时间:
t := time.Date(2024, 5, 18, 15, 0, 0, 0, time.UTC)
处理 Unix 时间戳:
now := time.Now()
timestamp := now.Unix() // Unix 时间戳
t := time.Unix(timestamp, 0) // 从 Unix 时间戳创建时间
处理时区转换:
now := time.Now()
loc, _ := time.LoadLocation("America/New_York")
estTime := now.In(loc)
这些是 Go 语言中处理日期和时间的一些基本操作。如果你有更具体的需求,可以详细说明,我可以提供更精确的帮助。