2017-02-22 35 views
-2

Я написал пример программы, чтобы проиллюстрировать мой вопрос, и его можно посмотреть здесь: https://play.golang.org/p/6776lYcbBRGolang структура поля и демаршаллизации в эту структуру

Так что мой вопрос:

когда структура (GameOne) название поля начинается с заглавной буквы, json.Unmarshal работает должным образом; , когда он начинается с строчной буквы (GameTwo), для значения поля установлено значение по умолчанию.

Почему это так? Имеет ли он какое-то отношение к правилам видимости/видимости?

Заранее спасибо.

+0

Возможный дубликат [Мои структуры не сортируются в json] (http://stackoverflow.com/questions/15452004/my-structures-are-not-marshalling-into-json) – RdB

ответ

1

json.Unmarshal устанавливает только поля экспорта в структуре и для экспорта поля первая буква должна быть капиталом.
Для получения дополнительной информации, которую я настоятельно рекомендую вам взглянуть на documentation

1

От the documentation (курсив добавлен):

распаковать только установить экспортируемые поля на структуры.

Поля, начинающиеся с буквы нижнего регистра, конечно же, не экспортируются. Таким образом, для маршала JSON (или вообще ничего за пределами вашего пакета) нет возможности повлиять на них.

 Смежные вопросы

  • Нет связанных вопросов^_^