今天就跟大家聊聊有关go语言使用第三方包 json化结构体,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。
创新互联主营延庆网站建设的网络公司,主营网站建设方案,重庆App定制开发,延庆h5成都微信小程序搭建,延庆网站营销推广欢迎延庆等地区企业咨询
1、既然是把结构体转为json字符串,那么先来定义一个结构体
复制代码 代码如下:
// 定义一个结构体
type NewsModel struct {
Id int
Title string
}
2、且看ffjson这包用什么方法来把结构体转为json字符串
复制代码 代码如下:
func main() {
news := NewsModel{110,"hello"}
res,err := ffjson.Marshal(news)
if err != nil {
fmt.Println("格式化错误")
fmt.Println(err.Error())
return
}
// 得到是字节数组,所以还有转为string
fmt.Println(string(res))
}
打印:
{"Id":110,"Title":"hello"}
得到了一个json字符串
3、拓展
为结构体封装一个方法ToJson()
专门来干这事
复制代码 代码如下:
package main
import (
"fmt"
"github.com/pquerna/ffjson/ffjson"
)
// 定义一个结构体
type NewsModel struct {
Id int
Title string
}
// 定义一个方法
func (news NewsModel) ToJson() string {
res,err := ffjson.Marshal(news)
if err != nil {
return err.Error()
}
// 得到是字节数组,所以还有转为string
return string(res)
}
func main() {
news := NewsModel{110,"hello"}
fmt.Println(news.ToJson()) // 打印:{"Id":110,"Title":"hello"}
}
看完上述内容,你们对go语言使用第三方包 json化结构体有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注创新互联行业资讯频道,感谢大家的支持。