1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
| package main
import ( "fmt" "reflect" )
type Cat struct { Name string Attr string `json:"attr" id:"222"` }
func main() { ins := Cat{ Name: "BBA", Attr: "BNW", } t := reflect.TypeOf(ins) for i := 0; i < t.NumField(); i++ { field := t.Field(i) fmt.Println(field.Name) fmt.Println(field.Type) fmt.Println(field.Tag) } fmt.Println("--------------------------") if f, ok := t.FieldByName("Attr"); ok { fmt.Println(f.Tag.Get("json")) fmt.Println(f.Tag.Get("id")) } }
|