我最近将json消息解析为如下所示的struct数组:
type Fruit struct {
Number string
Type string
}
type Person struct {
Pid string
Fruits []Fruit
}
func main() {
var p Person
str := `{"pid":"123","fruits":[{"number":"10","type":"apple"},{"number":"50","type":"cherry"}]}`
json.Unmarshal([]byte(str), &p)
//loop struct array and insert into database
stmt, err := tx.Prepare(`insert into empi_credentials(PID, type, num) values(?, ?, ?)`)
if err != nil {
panic(err.Error())
}
defer stmt.Close()
for x := range p.Fruits {
if _, err = stmt4.Exec(string(i), x.Type, x.Number); err != nil {
log.Println("stmt1.Exec: ", err.Error())
return
}
}
}
当我编译它时,编译器说x.Type和x.Number未定义...
我该如何解决?
修复错误
undefined: i
x.Type undefined (type int has no field or method Type)
x.Number undefined (type int has no field or method Number)
更改
for x := range p.Fruits
至
for i, x := range p.Fruits
参考:对于语句
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句