go - time.Unix(t, offset) 给出相同的时间?
问题描述
尝试使用以下 Go 代码获取连续时间戳
package main
import "fmt"
import "time"
func main () {
ts := int64(1500000000) // start
for i := int64(0); i<1e6; i = i + 1000 { // successively add 1e3
t := time.Unix(ts, i) // Get start + i
fmt.Printf("%d %02d:%02d\n", ts+i, t.Hour(), t.Minute())
}
}
,输出仍然像
....
1500995000 04:40
1500996000 04:40
1500997000 04:40
1500998000 04:40
1500999000 04:40
请问,这里有什么问题?为什么小时:分钟没有变化?(04:40)
go version go1.15.6 linux/amd64
解决方案
您正在更改纳秒和打印分钟...
https://pkg.go.dev/time@go1.16.7#Unix
func Unix(sec int64, nsec int64) Time
检查这个: https: //play.golang.org/p/_Ywn9S5Khch
package main
import "fmt"
import "time"
func main () {
ts := int64(1500000000) // start
for i := int64(0); i<1e6; i = i + 1000 { // successively add 1e3
t := time.Unix(ts, i) // Get start + i
fmt.Printf("%d %02d:%02d ---- %2d\n", ts+i, t.Hour(), t.Minute(), t.UnixNano())
}
}
推荐阅读
- javascript - 使用 Jquery 获取价值
- spring-boot - 使用 S2I 和使用 openshift/wildfly-101-centos7 基础映像在 openshift 集群上部署 spring boot 应用程序时出错
- python - 为什么我的递归会导致自引用 dict 值?
- angular - Ionic Cordova 背景模式不起作用,如何解决?
- c# - 通过 C# MVC Web 应用程序将日期格式传递到 SQL SPROC
- reactjs - 在 React-Testing-Library 上运行初始测试时,fsevents 不是函数
- javascript - 使用 Highcharts-React 拖放不起作用
- android - 当应用程序被杀死或在后台时收到 fcm 通知时自动打开应用程序
- database - 如何计算 Firestore 中的唯一票数?
- php - Ajax 响应未返回