我试着从下面的代码中理解,我怎样才能只打印“种类”和“宽度”键值。
package main
import (
"encoding/json"
"fmt"
)
type Dimensions struct {
Height int
Width int
}
type Bird struct {
Species string
Description string
Dimensions Dimensions
}
func main() {
birdJson := `{"species":"pigeon","description":"likes to perch on rocks", "dimensions":{"height":24,"width":10}}`
var bird Bird
json.Unmarshal([]byte(birdJson), &bird)
fmt.Println(bird)
// {pigeon likes to perch on rocks {24 10}}
}
我期望的输出是:鸽子和10只
2条答案
按热度按时间2lpgd9681#
您在这里所做的是打印整个对象,而您应该打印您要寻找的特定字段。相反,您应该尝试下列动作:
这将产生:
鸽子10
为了使它更容易阅读,可以像这样使用
fmt.Printf
:其将产生:
种类:鸽子,宽度:10
dw1jzc5e2#
您可以在不需要打印的结构上放置一个json标记,如
json: "-"