2017-02-22 105 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封送拆分器(或實際上您的封裝外的任何內容)無法影響它們。