要在结构中打印字段名称:
fmt.Printf("%+vn", yourProject)从
fmt包装中:
打印结构时,加号(
%+v)添加字段名称
假设您有一个Project的实例(在’
yourProject‘中)
文章JSON和Go将提供有关如何从JSON结构中检索值的更多详细信息。
此“按示例进行搜索”页面提供了另一种技术:
type Response2 struct { Page int `json:"page"` Fruits []string `json:"fruits"`}res2D := &Response2{ Page: 1, Fruits: []string{"apple", "peach", "pear"}}res2B, _ := json.Marshal(res2D)fmt.Println(string(res2B))那会打印:
{"page":1,"fruits":["apple","peach","pear"]}如果没有任何实例,则需要 使用反射
来显示给定结构的字段名称,如本例所示。
type T struct { A int B string}t := T{23, "skidoo"}s := reflect.ValueOf(&t).Elem()typeOfT := s.Type()for i := 0; i < s.NumField(); i++ { f := s.Field(i) fmt.Printf("%d: %s %s = %vn", i, typeOfT.Field(i).Name, f.Type(), f.Interface())}


