上代码Example
前半部分是把文件中的json读出来到结构体
后半部署是把对象序列化json后,写到文件中。
package main
import (
"encoding/json"
"fmt"
"io/ioutil"
)
type Salary struct {
Basic, HRA, TA float64
}
type Employee struct {
FirstName, LastName, Email string
Age int
MonthlySalary []Salary
}
type Catlog struct {
Name string `json: "name"`
Company string `json: "company"`
}
func main() {
file, _ := ioutil.ReadFile("test.json")
data := Catlog{}
_ = json.Unmarshal(file, &data)
fmt.Println(data)
data2 := Employee{
FirstName: "Mark",
LastName: "Jones",
Email: "mark@gmail.com",
Age: 25,
MonthlySalary: []Salary{
Salary{
Basic: 15000.00,
HRA: 5000.00,
TA: 2000.00,
},
Salary{
Basic: 16000.00,
HRA: 5000.00,
TA: 2100.00,
},
Salary{
Basic: 17000.00,
HRA: 5000.00,
TA: 2200.00,
},
},
}
file2, _ := json.MarshalIndent(data2, "", " ")
_ = ioutil.WriteFile("test2.json", file2, 0644)
}