1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > Go语言获取当天 昨天 明天 某天0点时间戳以及格式化时间

Go语言获取当天 昨天 明天 某天0点时间戳以及格式化时间

时间:2022-04-18 11:43:12

相关推荐

Go语言获取当天 昨天 明天 某天0点时间戳以及格式化时间

获取当前时间 到 明天0点整的时间差的秒级时间戳的字符串形式

func GetTimeDifference() string {nowTime := time.Now()// 当天秒级时间戳nowTimeStamp := nowTime.Unix()nowTimeStr := nowTime.Format("-01-02")//使用Parse 默认获取为UTC时区 需要获取本地时区 所以使用ParseInLocationt2, _ := time.ParseInLocation("-01-02", nowTimeStr, time.Local)// 第二天零点时间戳towTimeStamp := t2.AddDate(0, 0, 1).Unix()return strconv.FormatInt(towTimeStamp - nowTimeStamp, 10)}

当天0点时间戳

addTime := time.Date(t.Year(), t.Month(), t.Day(), 0, 0, 0, 0, t.Location())timeSamp := addTime.Unix()fmt.Println(timeSamp) // 1649952000

当天0点格式化时间:

t := time.Now()addTime := time.Date(t.Year(), t.Month(), t.Day(), 0, 0, 0, 0, t.Location())timeStr := addTime.Format("-01-02")fmt.Println(timeStr) // -04-15

昨日0点时间戳:

ts := time.Now().AddDate(0, 0, -1)timeYesterday := time.Date(ts.Year(), ts.Month(), ts.Day(), 0, 0, 0, 0, ts.Location())timeStampYesterday := timeYesterday.Unix()fmt.Println(timeStampYesterday) // 1649865600

昨日0点格式化时间:

ts := time.Now().AddDate(0, 0, -1)timeYesterday := time.Date(ts.Year(), ts.Month(), ts.Day(), 0, 0, 0, 0, ts.Location()).Unix()timeStr := time.Unix(timeYesterday, 0).Format("-01-02")fmt.Println(timeStr) // -04-14

或者

ts := time.Now().AddDate(0, 0, -1)timeYesterday := time.Date(ts.Year(), ts.Month(), ts.Day(), 0, 0, 0, 0, ts.Location())timeStr := timeYesterday.Format("-01-02")fmt.Println(timeStr) // -04-14

某天的明天0点整

例子1:

过去某天,如-02-28 第二天0点整:-03-01 00:00:00

nowTimeStr := "-02-28"//使用Parse 默认获取为UTC时区 需要获取本地时区 所以使用ParseInLocationt2, _ := time.ParseInLocation("-01-02", nowTimeStr, time.Local)towTimeStamp := t2.AddDate(0, 0, 1).Unix()towTimeStr := time.Unix(towTimeStamp, 0).Format("-01-02 15:04:05")fmt.Println(towTimeStr) // -03-01 00:00:00

例子2:

未来某天,如 -04-30 第二天0点整:-05-01

nowTimeStr := "-04-30"//使用Parse 默认获取为UTC时区 需要获取本地时区 所以使用ParseInLocationt2, _ := time.ParseInLocation("-01-02", nowTimeStr, time.Local)towTimeStamp := t2.AddDate(0, 0, 1).Unix()towTimeStr := time.Unix(towTimeStamp, 0).Format("-01-02")fmt.Println(towTimeStr) // -05-01

某天的前一天0点整

-04-01 前一天0点整:-03-31 00:00:00

nowTimeStr := "-04-01"//使用Parse 默认获取为UTC时区 需要获取本地时区 所以使用ParseInLocationt2, _ := time.ParseInLocation("-01-02", nowTimeStr, time.Local)towTimeStamp := t2.AddDate(0, 0, -1).Unix()towTimeStr := time.Unix(towTimeStamp, 0).Format("-01-02 15:04:05")fmt.Println(towTimeStr) // -03-31 00:00:00

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。