将Golang时间格式化为特定时间戳
我正在尝试格式化时间。时间类型为昨天的特定时间,特别是23:59:59 我有一个将当前时间转换为IST的函数将Golang时间格式化为特定时间戳,go,Go,我正在尝试格式化时间。时间类型为昨天的特定时间,特别是23:59:59 我有一个将当前时间转换为IST的函数 func getTimeInIST() time.Time { loc, _ := time.LoadLocation("Asia/Kolkata") now := time.Now().In(loc) return now } 另一个转换为前一天的函数 func GetYesterdaysDateFromTime() time.Time{ return
func getTimeInIST() time.Time {
loc, _ := time.LoadLocation("Asia/Kolkata")
now := time.Now().In(loc)
return now
}
另一个转换为前一天的函数
func GetYesterdaysDateFromTime() time.Time{
return getTimeInIST().AddDate(0, 0, -1)
}
我想将上面的格式设置为日期为2009-06-12 23:59:59的时间戳
我是为了这个
yesterday := common.GetYesterdaysDateFromTime()
yesterday.Format("2006-01-02 23:59:59")
但我得到这个2019-06-1118:589:589
我做错了什么?你的时间格式错了。Go中的参考时间为 这张照片是: 2019-06-11 20:37:04
在格式中使用正确的hh:mm:ss值,就像处理yyyy-mm-dd一样。格式不是这样工作的。格式以特定格式表示时间;它们不会改变任何有关时间值的内容。如果要显示时间23:59:59,则需要在格式化之前设置时间。常见的定义是什么?
func getTimeInIST() time.Time {
loc, _ := time.LoadLocation("Asia/Kolkata")
now := time.Now().In(loc)
return now
}
func GetYesterdaysDateFromTime() time.Time {
return getTimeInIST().AddDate(0, 0, -1)
}
func main() {
yesterday := GetYesterdaysDateFromTime()
print(yesterday.Format("2006-01-02 15:04:05"))
}