Files
bulma/json/json_demo_1.go

36 lines
811 B
Go

package main
import (
"encoding/json"
"fmt"
)
// User 基础数据模型
type User struct {
ID int64 `json:"user_id"`
Username string `json:"username"`
Age int `json:"age"`
}
func main() {
// 序列化:Go → JSON
user := User{ID: 1001, Username: "bulma_admin", Age: 26}
jsonData, err := json.MarshalIndent(user, "", " ")
if err != nil {
fmt.Printf("序列化失败:%v\n", err)
return
}
fmt.Println("=== 序列化结果 ===")
fmt.Println(string(jsonData))
// 反序列化:JSON → Go
jsonStr := `{"user_id":1002,"username":"json_test","age":28}`
var newUser User
if err := json.Unmarshal([]byte(jsonStr), &newUser); err != nil {
fmt.Printf("反序列化失败:%v\n", err)
return
}
fmt.Println("\n=== 反序列化结果 ===")
fmt.Printf("%+v\n", newUser)
}