数据格式转换有很多方法,具体请查看接口文档:https://pkg.go.dev/github.com/gogf/gf/v2/encoding/gjson

这里需要注意的是,有一些Must*转换方法,这些方法保证必须转换为指定的数据格式,否则直接panic

我们就来一个例子说明即可。

data :=
    `{
    "users" : {
        "count" : 1,
        "array" : ["John", "Ming"]
    }
}`
if j, err := gjson.DecodeToJson(data); err != nil {
    panic(err)
} else {
    fmt.Println("JSON:")
    fmt.Println(j.MustToJsonString())
    fmt.Println("======================")

    fmt.Println("XML:")
    fmt.Println(j.MustToXmlString())
    fmt.Println("======================")

    fmt.Println("YAML:")
    fmt.Println(j.MustToYamlString())
    fmt.Println("======================")

    fmt.Println("TOML:")
    fmt.Println(j.MustToTomlString())
}

// Output:
// JSON:
// {"users":{"array":["John","Ming"],"count":1}}
// ======================
// XML:
// <users><array>John</array><array>Ming</array><count>1</count></users>
// ======================
// YAML:
// users:
//     array:
//       - John
//       - Ming
//     count: 1
//
// ======================
// TOML:
// [users]
//   array = ["John", "Ming"]
//   count = 1.0

gjson支持将JSON转换为其他常见的数据格式,目前支持:JSONXMLINIYAML/YMLTOMLPROPERTIESStruct数据格式之间的相互转换。





  • No labels

3 Comments

  1. json序列化转换的时候 怎么跳过html转义

    比如 & 不被 转换成 /u0026

    1. 再解码一次