我正在尝试创建一个填充给定字段的方法struct,但是要设置正确的值,我需要转换值以检查类型是否与结构字段类型匹配。
例子:
type S struct {
Name string
Age int
}
该值将始终是string因为它来自 URL。
const stubQuery = "name=sam&page=30"
query, _ := url.ParseQuery(stubQuery)
// e.g result: {"name": ["sam"], "age": ["30"]}
我已经设法迭代query并从S结构中获取字段,但是我怎样才能获取字段类型并将“30”转换为结构类型?
structValue := reflect.ValueOf(&S{}).Elem()
structFieldValue := structValue.FieldByName("Age")
structFieldType := structFieldValue.Type()
val := reflect.ValueOf("30")
if structFieldType != val.Type() {} // Always false
UYOU
牧羊人nacy
相关分类