Я новичок в GO язык, и я пытаюсь получить значение из функции, которая возвращает две строки, то есть [str1, str2]
Преобразовать интерфейс {} в [] строку в Golang
ret, err := fun1(....)
И прототип функции является
func fun1(...) (interface{}, error)
печатаю ret
, это
[[57 57 56 56] [97 100 98 49 57 55 102 98 49 101 57 48 52 98 102 56 55 102 52 56 57 57 55 54 49 55 101 57 49 100 98 49]]
который выглядит как т он типа [][]uint8
, поэтому, я попробовал этот способ
v, _ := ret.([][]uint8)
str1, _ := strconv.Atoi(string(v[0]))
str2, _ := strconv.Atoi(string(v[1]))
это не удалось, v является []
И я также пытался:
v, _ := ret.([]string)
ничего не изменилось
Как решить эту проблему? Любая помощь будет оценена :)
PS: Я отлаживать и найти первая строка "9988"
Не игнорируйте ошибки, назначая их символам подчеркивания. Проверьте их и распечатайте. Скорее всего, они предоставят вам решение. –
Есть ли 'v: = ret. ([] String)' panic? Если да, то что говорит паническое сообщение? –
нет, просто получите v is '[]' @ Ainar-G –