Go语言生成JSON变量示例:结构体与编码
在 Go 语言中可以使用encoding/json包来生成一个这样的 JSON 变量。可以定义一个结构体来表示该 JSON 变量的结构,然后使用json.Marshal()函数将结构体转换为 JSON 字符串。下面是一个示例代码:
package main
import (
"encoding/json"
"fmt"
)
// 定义 Data 结构体
type Data struct {
Conent string `json:"conent"`
Content string `json:"content"`
FullID string `json:"fullid"`
Key int `json:"key"`
NotList string `json:"notList"`
NotNull string `json:"notNull"`
System int `json:"system"`
Title string `json:"title"`
}
// 定义 Request 结构体
type Request struct {
UID int `json:"uid"`
Token string `json:"token"`
Remark string `json:"remark"`
Data []Data `json:"data"`
ActivityID string `json:"activityId"`
Version string `json:"version"`
}
func main() {
// 创建 Data 对象
data := Data{
Conent: "",
Content: "",
FullID: "79857",
Key: 1,
NotList: "false",
NotNull: "false",
System: 0,
Title: "刘子贤",
}
// 创建 Request 对象
request := Request{
UID: 39658498,
Token: "aksjfjkf",
Remark: "",
Data: []Data{data},
ActivityID: "activityid",
Version: "4.5.6",
}
// 将 Request 对象转换为 JSON 字符串
jsonData, err := json.Marshal(request)
if err != nil {
fmt.Println("JSON encoding error:", err)
return
}
// 打印 JSON 字符串
fmt.Println(string(jsonData))
}
运行上述代码将输出生成的 JSON 字符串:
{"uid":39658498,"token":"aksjfjkf","remark":"","data":[{"conent":"","content":"","fullid":"79857","key":1,"notList":"false","notNull":"false","system":0,"title":"刘子贤"}],"activityId":"activityid","version":"4.5.6"}
请注意,结构体字段的标签指定了 JSON 字段的名称。这样可以确保生成的 JSON 字符串与给定的 JSON 变量结构一致。
原文地址: https://www.cveoy.top/t/topic/qqLy 著作权归作者所有。请勿转载和采集!