草庐IT

file_time_type

全部标签

arrays - 不能在赋值 : need type assertion 中使用字(类型接口(interface) {})作为类型字符串

我是Go的新手,出于某种原因我正在做的事情对我来说似乎不是很直接。这是我的代码:for_,column:=rangeresp.Values{for_,word:=rangecolumn{s:=make([]string,1)s[0]=wordfmt.Print(s,"\n")}}我得到了错误:不能在赋值中使用word(typeinterface{})作为类型字符串:需要类型断言resp.Values是一个数组数组,所有数组都填充有字符串。reflect.TypeOf(resp.Values)返回[][]interface{},reflect.TypeOf(resp.Values[0])

go - 系统休眠后 time.Time.Sub() 计算错误

我创建了一个timerapplication在终端窗口中运行。我在time.Time.Sub()中目睹了一些奇怪的行为当我启动终端计时器并通过关闭它让运行它的macOS笔记本电脑进入休眠状态时。当我重新打开笔记本电脑时,突然该功能似乎无法正常工作,正如thisblockofcode所跟踪的那样,在这个复制的输出中可以看出计算错误,除非我误解了time.Time值:==615aTimer==20m59snow:2018-04-2705:58:20.440440541-0700PDTm=+310.234277006exactLeft:20m59.142673336st.end:2018-0

go - 为什么 time.Time 在 bson.Marshal 和 bson.Unmarshal 之后不相等?

为什么会输出false?我期待true...packagemainimport("fmt""time""gopkg.in/mgo.v2/bson")typeSstruct{Ttime.Time}funcmain(){t:=S{time.Now()}bytes,_:=bson.Marshal(t)vardtSbson.Unmarshal(bytes,&dt)fmt.Println(dt.T.Equal(t.T))}gorun上面会输出false,为什么Marshal/Unmarshal不保留原来的值? 最佳答案 Bson存储时间的精度

time - 我如何在 Go 语言中格式化时间

我需要这样格式化时间Mon,16Jun201409:19:01+0200代码如下a:=time.RFC1123Z给我Mon,02Jan200615:04:05-0700这似乎是正确的,但我猜需要当前时间并以某种方式使用now()。但还没想出办法。 最佳答案 您需要使用Format为了这。time.RFC1123Z只是一个布局字符串。t:=time.Now()s:=t.Format(time.RFC1123Z)//Formatttoastringusingthegivenlayoutfmt.Println(s)

戈朗 : How to declare returned variables WITH TYPE?

在GO中,如何声明WITHTYPE函数的返回变量?例如我有这个代码dat,err:=ioutil.ReadFile("/tmp/dat")check(err)fmt.Print(string(dat))但我想要的是:vardat[]byte,errerror:=ioutil.ReadFile("/tmp/dat")check(err)fmt.Print(string(dat))然而,无论我如何尝试,我都只能得到这个输出syntaxerror:unexpectedcomma,expectingsemicolonornewlineor}我在没有IDE的情况下工作,随着变量数量的增加,必须将

go - 如何在 Go 中将 time.Time 变量转换为原子变量?

在我的在线游戏RESTFUL网络服务中,我将每个问题的开始时间存储在一个全局变量中,如下所示:varMyTimetime.Time我应该在每个级别后更新它游戏的。我的应用程序是分布式的,所以我想确保我的所有应用程序不会同时更新它。这就是为什么我决定让它成为原子的。其实我很熟悉Golangsync/atomic包。我尝试使用atomic.LoadPointer()方法,但它需要不安全的特定参数类型。你还有其他办法吗?更新:好的,我这样解决了我的问题。我将时间变量定义为atomic.Value并使用原子加载和存储方法。这是代码:varmyTimeatomic.ValuemyTime.Sto

go - 如何在 for 循环中创建持续时间 -(不匹配类型 int 和 time.Duration)

我有一个循环,我从一个时间开始。时间和我添加一分钟的内容。foridx:=rangekeys{vara=idx*time.Minutevart=tInit.Add(time.Minute*a)fmt.Println(t,idx)}这是我的错误invalidoperation:idx*time.Minute(mismatchedtypesintandtime.Duration) 最佳答案 数值运算的操作数必须具有相同的类型。Convertint值idx到time.Duration:vara=time.Duration(idx)*tim

go - 不能使用 p[idx + 1 :] (type []Person) as type Person in append

这个问题在这里已经有了答案:cannotusetype[]runeastyperuneinappend(1个回答)关闭2个月前。packagemainimport("fmt")typePersonstruct{namestringageint}funcmain(){p:=[]Person{{"Kate",20},{"Simon",30},{"John",28},{"Lake",19},}n:=[]string{"Simon","Kate","Lake",}foridx:=0;idx我有上面的代码来删除pslice中显示在nslice中的人。但是在编译的时候出现了如下错误:./main.

time - 获取下一个小时的时间戳

如何获取下一小时的时间戳?示例:某物在1小时后过期,所以它是time.Now()加一小时我该怎么做?谢谢! 最佳答案 time.Now().Add(time.Hour)playground 关于time-获取下一个小时的时间戳,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/34260121/

go - golang 中的类型不一致,不能将 <Type> 用作 <Type>

我正在用Go编写一个使用Logger对象类型的应用程序。在其中我使用了另一个使用相同记录器对象类型的应用程序:应用1:import"gitlab.sio.com/go/zlog"varlogger=zlog.New(append(opts,zlog.App(c.Name,typ,version),zlog.Env(c.Environment),)...)....router.GET("/get",GetHandler(logger))....funcGetHandler(logger*zlog.Logger){....mdl,_:=security.New(*logger)....}A