我有这个结构定义:
// Two columns, both strings.
type ExampleStructItem struct {
Firstname string
Surname string
}
我有这部分列名称:
columns := []string{"Firstname", "Surname"}
我本质上是试图循环遍历我的列名称片段,然后对相应的结构执行反射以获取有关属性的信息,例如它们的“种类”等。
只需使用
Type.FieldByName()
var ex ExampleStructItem
t := reflect.TypeOf(ex)
for _, name := range columns {
field, ok := t.FieldByName(name)
if ok {
k := field.Type.Kind()
} else {
// error handling
}
}