@bogac

Convert Interface{} to Map?

Доброго вечера суток!

Подскажите пожалуйста. Есть следующий код и следующая структура:
func AddToMap(decoded interface{}) (map[string]interface{}) {
	v := reflect.ValueOf(decoded)
	if v.Kind() == reflect.Map {
		for t, key := range v.MapKeys() {
			strct := v.MapIndex(key)
			if key.Interface().(string) == "KeyN" {
				(///////-----///////)?????
			}
		}
	}
	return UserData
}


Пример структуры:
Map["key1":"value1", map["key2"]:{"value2, ... ,valueN"}, .... , map["KeyN":[map["NeedKey"]:{"NeedValue1, NeedValue2"}]]....]


После получения всех map, мне необходимо дальше добраться до мапы с ключем "NeedKey".
Она имеет тип Interface{} и я не нашел способов как пройтись по значениям данной мапы.
Перевод с помощью:
k := reflect.ValueOf(strct)
for _, values:= range k.MapKeys() {
.....
}

приводит к ошибке.

Прошу помощи и немного пояснения.
  • Вопрос задан
  • 608 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы