Home >Backend Development >Golang >Why do structure fields appear empty?
php editor Xinyi will explain to you why the structure fields are displayed as empty. In programming, a structure is a custom data type used to store different types of data. When a structure field appears empty, it may be because the structure was not initialized correctly or a value was not assigned to the field. In addition, it may also be due to field scope issues or structure definition errors. To solve this problem, you can check the initialization section of the code to ensure that the fields are assigned correctly. At the same time, check the definition and scope of the structure to ensure that it can correctly access the field values.
I'm struggling to get the correct output from the following code:
package main import ( "encoding/json" "fmt" ) func main() { var jsonBlob3 = []byte(`[ {"name": "Platypus", "spec": "Monotremata", "id":25 }, {"name": "Quoll", "spec": "Dasyuromorphia", "id":25 } ]`) type Animal2 struct { name string spec string id uint32 } var animals []Animal2 err := json.Unmarshal(jsonBlob3, &animals) if err != nil { fmt.Println("error:", err) } fmt.Printf("%+v\n", animals) }
Playground clip
The structure field is empty when printing. I'm sure there's a stupid bug somewhere, but I'm still new to Go and I've been stuck on this problem for a few hours. please help.
This problem has occurred many times. The problem is that only exported fields can be marshaled/unmarshaled.
Export structure fields starting with an uppercase letter.
type Animal2 struct { Name string Spec string Id uint32 }
Try it on Go Playground.
Note that the JSON text contains field names in lowercase text, but the json
package is "smart" enough to match them. If they are completely different, you can tell the json
package how to find them in the JSON text (or how to marshal them) using a struct tag, for example:
type Animal2 struct { Name string `json:"json_name"` Spec string `json:"specification"` Id uint32 `json:"some_custom_id"` }
The above is the detailed content of Why do structure fields appear empty?. For more information, please follow other related articles on the PHP Chinese website!