golang获取struct的tag值

package main

import (
	"fmt"
	"reflect" // 这里引入reflect模块
)

type A struct {
	B string `tag1:"b" tag2:"B"` //这引号里面的就是tag
	C string `tag1:"c" tag2:"C"`
}

func main() {
	user := &A{"fmt", "reflect"}
	s := reflect.TypeOf(user).Elem() //通过反射获取type定义
	for i := 0; i < s.NumField(); i++ {
		fmt.Println(s.Field(i).Tag.Get("tag2")) //将tag输出出来
	}
}

 

你可能感兴趣的:(golang获取struct的tag值)