我正在使用 Go 創建一個嵌套結構并填充它。我在結構中有一個需要自己設置的自定義字段,但它是在外部結構的字段中使用的類型。例如:type Case struct { CaseID string `json:"caseID"` CaseStatus string `json:"caseStatus"` Kit_Details []Kit_Details `json:"kit_Details"`}type Kit_Details struct { KitID string `json:"kitID"` KitStatus string `json:"kitStatus"`}我創建了一個嵌套結構。我想KitStatus在程序中使用 Case 結構更新字段。這意味著如果我從中訪問 Case 結構,我如何移動到Kit_Details結構并更新結構的字段。有人可以幫助我如何循環使用 Case 結構的字段FieldByName("KitStatus")并使用它SetString("New value")來更新該字段的值。
1 回答

小唯快跑啊
TA貢獻1863條經驗 獲得超2個贊
你可以這樣使用:
v := reflect.ValueOf(test)
fmt.Println("Value of test before update", v)
v.FieldByName("Kit_Details").Index(0).FieldByName("KitStatus").SetString("abcdsdf")
您可以使用循環遍歷所有元素并使用 更新它們Index()。
- 1 回答
- 0 關注
- 124 瀏覽
添加回答
舉報
0/150
提交
取消