草庐IT

go-simplejson

全部标签

json - 我如何清理新主义 go-lang 的这种返回类型?

我试图用新主义制作的这个模型现在正在运行,但我不知道如何使返回类型更短和/或更干净。必须有办法做到这一点:[]struct{UserIdstring"json:\"account.UserId\"";FirstNamestring"json:\"account.firstName\"";姓氏字符串"json:\"account.lastName\""}进入:[]Account之类的packagemodelsimport("errors""strconv""time"//"fmt""github.com/jmcvetta/neoism")var(Accountsmap[string]*A

go - 高效地将压缩值写入流

目前,我正在尝试从现有的C代码中翻译一些压缩算法。编码和解码对我来说并不难。它更多地是关于流(无论是文件还是套接字)的序列化。输入为12位,压缩输出为7位。但是向流中写入内容总是需要写入整个8位。因此,由于每个值总是剩余1位,这是否意味着我必须缓冲7个字节才能写入8个值?这将给出以下字节(所有1都属于第一个值,所有2都属于第二个值,等等)11111112222222333333344444445555555666666677777778888888真正的编解码器或使用的语言都不重要(实际上:编解码器是G.711,语言是Golang)。所以也许go-标签不合适。有什么线索吗?

go - 改进多个 map 访问并避免不正确的类型转换

我的项目中有这段代码://data.Objectsisamap[string]interface{}corporateName:=data.Objects["corporateName"].(string)dba:=data.Objects["dba"].(string)licence:=data.Objects["licence"].(string)resaleCert:=data.Objects["resaleCert"].(string)einNumber:=data.Objects["einNumber"].(string)phoneNumber:=data.Objects["

networking - Go - 从多个阅读器的 TCP 连接读取数据

我正在使用Go编程语言开发CloudServer的网络。我遇到了同时从不同的Goroutines读取相同的TCPconn的问题。这是一个简单的例子packagemainimport("fmt""net")funcmain(){addr,_:=net.ResolveTCPAddr("tcp",":8888")listener,_:=net.ListenTCP("tcp",addr)for{conn,err:=listener.AcceptTCP()iferr!=nil{fmt.Println(err)return}goHandle(conn)//outputalwayscomingfro

macos - Go: "stat hello.go: no such file or directory"

刚刚在MacOSX上安装了Go,Yosemite版本10.10.3,如GettingStarted中所述官网页面:MacOSXpackageinstallerDownloadthepackagefile,openit,andfollowthepromptstoinstalltheGotools.ThepackageinstallstheGodistributionto/usr/local/go.Thepackageshouldputthe/usr/local/go/bindirectoryinyourPATHenvironmentvariable.Youmayneedtorestart

git - 在 git2go (libgit2) 中查找包含指定 blob 对象的提交

给定一个blob对象,您如何找到包含该对象的(第一个)提交?我认为的一个解决方案是从分支的顶端开始一个revwalk并沿着图表走下去,检查每个提交的树并使用类似git_tree_entry_byid的东西来查看它是否包含你的目的。这会找到可从特定分支访问的提交,但在我的情况下这是一个解决方案。有更好的方法吗? 最佳答案 如果您想检查某个对象是否包含在特定提交中,唯一的方法是沿着对象图走下去,看看它是否存在。但是,您可以通过一种方式重复使用其中一些搜索。如果你比较了一对提交,并且你知道有问题的对象包含(或不包含)在其中一个中,你可以查

go - 无法使用自制软件安装编译在 OS X 上导入 net/http 的程序

我已经在我的OSX10.10机器上安装了gousingHomebrew。每次我尝试编译导入net/http的示例应用程序时,我都会收到以下错误:loadcmd/cgo:packagecmd/cgo:noGosourcefilesin/Users/bbaron/google_appengine/goroot/src/cmd/cgo我的GOPATH变量设置正确($HOME/go)并且我的目录结构看起来是正确的:/Users/bbaron/go/src/github.com/einsteinx2/gamenotifier/Users/bbaron/go/src/github.com/eins

java - 为什么Java和Go的gzip会得到不同的结果?

首先,我的Java版本:stringstr="helloworld";ByteArrayOutputStreamlocalByteArrayOutputStream=newByteArrayOutputStream(str.length());GZIPOutputStreamlocalGZIPOutputStream=newGZIPOutputStream(localByteArrayOutputStream);localGZIPOutputStream.write(str.getBytes("UTF-8"));localGZIPOutputStream.close();localBy

go - 在 Go 问题中获取 URL 参数

我有一个看起来像这样的URL:http://localhost/templates/verify?key=ijio我的路由器是这样的:import("github.com/gorilla/mux""github.com/justinas/alice")ctx:=&model.AppContext{db,cfg}//passesindatabaseandconfigverifyUser:=controller.Verify(ctx)mx.Handle("/verify",commonHandlers.ThenFunc(verifyUser)).Methods("GET").Name("v

struct - 在 Go 中干净地实现结构的多级结构

我是Golang的新手,我正在尝试用底部的字符串列表初始化一个结构体。我希望能够以一种清晰易读的方式访问内部的值,但它没有点击。例如,结构设置如下:typeconfigstruct{//aconfigcanhavemanyreplicasconfigNamestringreplicas[]string}typeinstancestruct{//aninstancecanhavemanyconfigsnamestringconfigs[]config}typeuserstruct{//ausercanhaveuptotwoinstancesinstances[]instance}我正在这