欧美一区二区三区,国内熟女精品熟女A片视频小说,日本av网,小鲜肉男男GAY做受XXX网站

golang 修改json文件

golang是一種高效的編程語(yǔ)言,它可以處理各種數(shù)據(jù)類(lèi)型,包括JSON文件。如果你需要修改JSON文件,也可以使用golang來(lái)實(shí)現(xiàn)。下面我們將介紹如何使用golang修改JSON文件。

package main
import (
"encoding/json"
"fmt"
"io/ioutil"
)
type UserInfo struct {
Name string `json:"name"`
Age  int    `json:"age"`
}
func main() {
data, err := ioutil.ReadFile("userinfo.json") // 讀取JSON文件
if err != nil {
fmt.Println("ReadFile error:", err)
return
}
var users []UserInfo
err = json.Unmarshal(data, &users) // 將JSON數(shù)據(jù)解析成結(jié)構(gòu)體
if err != nil {
fmt.Println("Unmarshal error:", err)
return
}
for index, user := range users {
if user.Name == "John" { // 找到需要修改的記錄
users[index].Age = 30 // 修改年齡
break
}
}
newData, err := json.Marshal(users) // 將結(jié)構(gòu)體轉(zhuǎn)為JSON格式
if err != nil {
fmt.Println("Marshal error:", err)
return
}
err = ioutil.WriteFile("userinfo.json", newData, 0666) // 寫(xiě)入JSON文件
if err != nil {
fmt.Println("WriteFile error:", err)
return
}
}

上面的代碼首先讀取JSON文件,然后將JSON數(shù)據(jù)解析成結(jié)構(gòu)體數(shù)組。接著遍歷結(jié)構(gòu)體數(shù)組,找到需要修改的記錄,并進(jìn)行修改。最后將更新后的結(jié)構(gòu)體數(shù)組轉(zhuǎn)為JSON格式,再將其寫(xiě)入JSON文件中。這樣就完成了JSON文件的修改。