我正在努力从以下代码中获取正确的输出:
package main
import (
"encoding/json"
"fmt"
)
func main() {
var jsonBlob3 = []byte(`[
{"name": "Platypus", "spec": "Monotremata", "id":25 },
{"name": "Quoll", "spec": "Dasyuromorphia", "id":25 }
]`)
type Animal2 struct {
name string
spec string
id uint32
}
var animals []Animal2
err := json.Unmarshal(jsonBlob3, &animals)
if err != nil {
fmt.Println("error:", err)
}
fmt.Printf("%+v\n", animals)
}
游乐场片段
打印时,结构字段为空。我敢肯定某个地方有一个愚蠢的错误,但是我仍然对Go还是陌生的,而且我已经在这里呆了几个小时。请帮忙。
这已经出现了很多次了。问题在于只能对导出的字段进行封送处理。
通过以大写(大写)字母开头来导出结构域。
type Animal2 struct {
Name string
Spec string
Id uint32
}
在Go Playground上尝试一下。
请注意,JSON文本包含带有小写字母文本的字段名称,但是json
包足够“聪明”以匹配它们。如果它们完全不同,则可以使用struct标记来告诉json
程序包如何在JSON文本中找到它们(或应如何封送它们),例如:
type Animal2 struct {
Name string `json:"json_name"`
Spec string `json:"specification"`
Id uint32 `json:"some_custom_id"`
}
问题内容: 从golang规范 是否有使用内的 空白 字段的实际方案?(一些代码片段将不胜感激) 问题答案: 填充正是所谓的:一些填充,用于将以下字段与您的需求对齐,例如,匹配C结构的布局。无法访问它(至少在没有软件包不安全的情况下)。
Safari不接受我输入的时间格式,原因是什么? 我找到了解决办法;
以下代码的输出令我惊讶: 在操场上运行时(https://play.golang.org/p/Ph67tHOt2Z_I)输出如下: 我相信我对切片的处理是正确的;据我所知,它在NewThing()中被初始化为nil,并在Add()中被追加(确保从append返回的值只分配给它的第一个参数)。 我错过了一些非常明显的东西吗? 我查看了以下资源以获得解释: https://gobyexample.co
我对使用Solr是新手,我制作了一个新的核心并复制了默认的模式。xml到conf文件夹。我所做的更改非常微不足道。 如您所见,我将字段设置为存储=false。根据我的理解,现在进行查询搜索时不应该显示字段。但这没有发生。我尝试重新启动solr实例,并再次进行查询以索引文件。 根据Solr Wiki,这应该已经为我的文件重新编制了索引。但是,当我再次运行查询时,仍然可以看到Id。 返回的文档示例(这
我安装凉亭 我正处于凉亭安装教程的第一步。没有什么我可以补充这个问题,除了我是全新的鲍尔,它没有预期的工作。 我完全重新安装了git/node。全部重新设置,然后回到这个问题
问题内容: 我有一个具有字段()的Spring 类(),但是该字段是我尝试使用它时所用的。日志显示该bean和该bean都在创建,但是每当我尝试在服务bean上调用该方法时,都会得到一个a 。Spring为什么不自动接线该领域? 控制器类: 服务等级: 应该自动连接的服务bean,但不是: 当我尝试时,出现以下异常: 问题答案: 本文向大家介绍为什么我的Spring @Autowired字段为空?