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

go修改 json文件

劉柏宏2年前8瀏覽0評論

Go語言有很多方便操作json的庫,其中比較受歡迎的有“encoding/json”、“github.com/tidwall/gjson”、“github.com/jmoiron/jsonq”等等。接下來,我們以“encoding/json”為例,介紹如何使用Go語言修改json文件。

首先,我們需要讀取json文件。假設我們有一個名為“example.json”的文件,它的內容如下:

{
"name": "張三",
"age": 20
}

我們可以使用以下代碼讀取json文件:

file, err := os.ReadFile("example.json")
if err != nil {
log.Fatal(err)
}
var data map[string]interface{}
err = json.Unmarshal(file, &data)
if err != nil {
log.Fatal(err)
}

通過以上代碼,我們得到了一個名為“data”的map,其中包含了讀取到的json數據。

接下來,我們可以修改map中的某一項數據,例如將年齡改為30:

data["age"] = 30

最后,我們需要將修改后的map重新轉換為json格式,并將其寫入原文件中。以下是完整代碼:

package main
import (
"encoding/json"
"log"
"os"
)
func main() {
file, err := os.ReadFile("example.json")
if err != nil {
log.Fatal(err)
}
var data map[string]interface{}
err = json.Unmarshal(file, &data)
if err != nil {
log.Fatal(err)
}
data["age"] = 30
newData, err := json.MarshalIndent(data, "", "  ")
if err != nil {
log.Fatal(err)
}
err = os.WriteFile("example.json", newData, 0644)
if err != nil {
log.Fatal(err)
}
}

通過以上代碼,我們成功將“example.json”文件中的年齡改為了30。