我有以下代碼,可以,它會打印Bob:package mainimport ( "encoding/json" "fmt")type User struct { UserName string // line2 Age int}func main() { var u User str := `{"userName":"Bob", "age": 20}` // line1 json.Unmarshal([]byte(str), &u) fmt.Println(u.UserName)}不幸的是,在實際情況中,下一個是 json 字符串,您可以看到鍵中line1有一個連字符( )。-str := `{"user-Name":"Bob", "age": 20}`眾所周知,為了自動解組json字符串,我們必須在struct中定義一個與json字符串中的鍵同名的成員,當然需要將其設置為大寫。所以我嘗試更改line2為User-Name string,但在變量名稱-中無效。go我應該怎么辦?
1 回答

浮云間
TA貢獻1829條經驗 獲得超4個贊
只需使用結構標簽將結構字段映射到 JSON 屬性:
type User struct {
? ? UserName string `json:"user-Name"`
? ? Age? ? ? int
}
- 1 回答
- 0 關注
- 131 瀏覽
添加回答
舉報
0/150
提交
取消