struct转map

5年以前  |  阅读数:501 次  |  编程语言:Golang 
func StructToMapDemo(obj interface{}) map[string]interface{}{
        obj1 := reflect.TypeOf(obj)
        obj2 := reflect.ValueOf(obj)

        var data = make(map[string]interface{})
        for i := 0; i < obj1.NumField(); i++ {
                data[obj1.Field(i).Name] = obj2.Field(i).Interface()
        }
        return data
}
func TestStructToMap(){
        student := Student{10, "jqw", 18}
        data := StructToMapDemo(student)
        fmt.Println(data)
}

Copyright© 2013-2020

All Rights Reserved 京ICP备2023019179号-8