I am trying to read json data from multiple json files. I am not sure how I read each files and concatenate all results
There json files name are test1.json, test2.json test3.json..etc with the same data structure but I am having an issue read then all and my code seems to only show the last one. I have concatenated a string based on the file name but seems to not working for me.
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", fileIndex, ".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) // all print shows the test3.json result
}
}
I need to be able to read all three json files and hoping to concatenate all results. Can anyone help me? Thank you!