golang漂亮地打印一个结构体

func SmartPrint(i interface{}){
    var kv = make(map[string]interface{})
    vValue := reflect.ValueOf(i)
    vType :=reflect.TypeOf(i)
    for i:=0;i<vValue.NumField();i++{
        kv[vType.Field(i).Name] = vValue.Field(i)
    }
    fmt.Println("获取到数据:")
    for k,v :=range kv{
        fmt.Print(k)
        fmt.Print(":")
        fmt.Print(v)
        fmt.Println()
    }
}

func TestSmartPrint(t *testing.T) {
    type User struct {
        Name string
        Id int
    }
    SmartPrint(User{"ft",5})
}

获取到数据:
Name:ft
Id:5

您可以自由的转载和修改,但请务必注明文章来源并且不可用于商业目的。
本站大部分内容收集于互联网,如果有侵权内容、不妥之处,请联系删除。敬请谅解!

  Previous post nginx 内置变量
Next post   docker容器ip互通

  关于博主【WANG-FEiHU】

Duplicate
-----------Complicate
--------------------------Appreciate
----------------------------------------[Fate]
-----------------------------------------------Elevate

三人行 有吾师

-------------花有重开日 梦无止境时-------------

  分类目录

  monitor(TD)

青春就是用来追忆的,当你怀揣着它时,它一文不值,只有将它耗尽后,再回过头看,一切才有了意义,爱过我们的人和伤害过我们的人,都是我们青春存在的意义。

在这有限的时间里,我们应该珍惜生命,珍惜机会,更要珍惜那得之不易的时间。因那滴答做响的时间脚步,一旦走过,再不回头。

要打败任何事情得先学会打败自己。

我会把每一次改变当做成长,哪怕是痛也值得。

时无英雄,使竖子成名

少年不识愁滋味,爱上层楼。爱上层楼。为赋新词强说愁。而今识尽愁滋味,欲说还休。欲说还休。却道天凉好个秋。