Feldnamen eines struct

Wenn man einmal wissen möchte, welche Elemente ein struct besitzt:

func getFields(i interface{}) []string {
	var fields []string
	tempintslice := []int{0}
	ielements := reflect.TypeOf(i).Elem().NumField()
	for j := 0; j < ielements; j++ {
		tempintslice[0] = j
		f := reflect.TypeOf(i).Elem().FieldByIndex(tempintslice)
		fields = append(fields, f.Name)
	}
	return fields
}

https://play.golang.org/p/QAgLMIwhyl

comments powered by Disqus