草庐IT

json - 在 Go 中将 JSON 解码为自定义格式

我试图让我的json以特定方式格式化以插入到数据库中。我能够解码json并将其映射到一个结构,但我需要能够为我需要的Companies数组添加和删除属性。我怎样才能让它产生下面代码中指出的最终结果?packagemainimport("encoding/json""fmt")typeInterestedPartiesstruct{Companies[]Company`json:"companies"`CCIDstring`json:"eventCCID"`}typeCompanystruct{CompanyIDstring`json:"companyID"`CompanyTypestr

for-loop - 字符串 slice 的范围不一致

这段代码:import"fmt"import"time"funcmain(){string_slice:=[]string{"a","b","c"}for_,s:=rangestring_slice{gofunc(){time.Sleep(1*time.Second)fmt.Println(s)}()}time.Sleep(3*time.Second)}产生输出“ccc”,而这段代码:import"fmt"funcmain(){string_slice:=[]string{"a","b","c"}for_,s:=rangestring_slice{s="asd"fmt.Println(

arrays - 在 Golang 中定义包含 slice 的数组映射

在Go(golang)中,是否可以定义一个从字符串到数组的映射,并且在每个数组元素中我想存储一个slice。像这样:vardata=make(map[string][2]Slice[]float64)然后我想检索我的数据,像这样:floatValue0=data["string-key"][0][#]floatValue1=data["string-key"][1][#] 最佳答案 data:=map[string][2][]float64{"golang":{[]float64{3.14,3.15},[]float64{3.12,

Golang JSON 数组

我正在尝试使用WordNik()为这个脚本的字典获取随机单词:https://github.com/jmagrippis/passwordWordNik正在输出:[{"id":7936915,"word":"Tanganyikan"},{"id":27180,"word":"cartographic"},{"id":48094,"word":"deterministic"},{"id":1485119,"word":"higher-risk"},{"id":120986,"word":"juristic"},{"id":1830806,"word":"magnetorheologica

Golang 程序泄漏内存

我正在尝试编写一个简单的程序,其行为类似于find|在golang中grep。我的程序都使用以下模式使用goroutines工作:goroutine(filech每个filech文件的goroutine(grepch这一切都按预期工作,但是当出现大量文件时,内存只会不断增长。我研究了Go提供的一些分析工具,但我不知道如何找到我的内存泄漏。我可以说内存主要被bytes.makeSlice用完了。谁能看看下面的代码,看看我做错了什么?另外,我想知道我的代码有什么问题,但我也想学习如何在未来自己调试它,所以如果你能为这样的问题提供详细的分析说明,那就是非常感谢。packagemainimpo

go - 从结构 slice 动态创建 map[string]struct 的常用函数

我有两个不同的结构,如下所述AabdB和两个过程函数。有什么方法可以让我编写一个通用函数来为struct生成map[string]struct。此外,有什么方法可以使用给定结构名称的反射来创建相同的对象?typeAstruct{namestring//morefields}typeBstruct{namestring//morefields}funcProcessA(input[]A)map[string]A{output:=make(map[string]A)for_,v:=rangeinput{output[v.name]=v}returnoutput}funcProcessB(i

go - 如何从golang中的对象时间获取string或int64?

我从输入源时间戳中获取,然后为该时间戳设置时间“00:00:00”。现在我需要从对象时间获取时间戳timestamp_int:=1532009163time:=time.Date(time.Unix(int64(timestamp_int),0).UTC().Year(),time.Unix(int64(timestamp_int),0).UTC().Month(),time.Unix(int64(timestamp_int),0).UTC().Day(),0,0,0,0,time.Unix(int64(timestamp_int),0).UTC().Location())new_ti

golang中的字符串拆分

关闭。这个问题需要detailsorclarity.它目前不接受答案。想改进这个问题吗?通过editingthispost添加细节并澄清问题.关闭4年前。Improvethisquestion我有两个参数名称和值,我试图在运行时解析它们。在运行时我传递了以下值:name=text,text,text,text,textvalue=0,285,404,6,24目前输出如下;Parameters:{"text,text,text,text,text":"0,285,404,6,24"}实际上它必须显示为,Parameters:{"text":"0"}Parameters:{"text":"

url - 获取传递的查询字符串

我是Go的新手。我的问题是如何在标准输出上获取URL编码字符串。下面是我用来访问api的URL字符串。schooltubeapi/v1/channeldetails?channelName=long%20division%20。下面是我用来获取RawQuery的代码url1:=ChannelNameu,_:=url.Parse(url1)log.Println(u)u.RawQuery=u.Query().Encode()log.Println(u)[输出]长除法[预期]long%20division%20我已经搜索了很多但没有找到类似问题的解决方案。 最佳

go - 为什么我的 Golang 定义的方法没有隐式实现而 String() 确实实现了

在https://tour.golang.org/methods/11它指出在底层,接口(interface)值可以被认为是一个值和一个具体类型的元组我定义M如下脚本1packagemainimport("fmt")typeIinterface{M()string}typeTstruct{Sstringwstring}func(tT)M()string{return"dddd"}funcmain(){variIi=T{"Hello","eeee"}fmt.Printf("(%v,%T)",i,i)fmt.Println(i)}这会打印出({Helloeee},main.T){Hello