1 回答
TA贡献1810条经验 获得超4个赞
您在生成文件名时使用fileIndex,而不是i在 for 循环中使用。更改后的代码将是:
type Book struct {
Id string `json: "id"`
Title string `json: "title"`
}
func main() {
fileIndex := 2 // three json files. All named test1.json, test2.json and test3.json
var master []Book
for i := 0; i <= fileIndex; i++ {
fileName := fmt.Sprintf("%s%d%s", "test", i, ".json")
// Open jsonFile
jsonFile, err := os.Open(fileName)
defer jsonFile.Close()
byteValue, _ := ioutil.ReadAll(jsonFile)
fmt.Println(byteValue)
var book []Book
json.Unmarshal(byteValue, &book)
fmt.Println(book)
}
}
另外,您可以在 for 循环中执行类似的操作master = append(master, book),以最终获取所有 JSON 内容master
- 1 回答
- 0 关注
- 111 浏览
添加回答
举报