go语言如何使用第三方包 javascripton化结构体操作示例

又是一场大雪过后,天空像海一样蔚蓝,甚至比海更加晶莹剔透。千峰万岭,极目望去,尽是白色,闪耀着一片连接不断的银光。山顶积雪未融,如白银宫网。

本文实例讲述了go语言使用第三方包 json化结构体操作。分享给大家供大家参考,具体如下:

前提条件:安装好操作系统对应的git

go get -u github.com/pquerna/ffjson

-u参数:如果本地已经存在该包,则强制更新。

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语言程序设计有所帮助。

到此这篇关于go语言如何使用第三方包 javascripton化结构体操作示例就介绍到这了。只有经历过地狱般的折磨,才有征服天堂的力量。只有流过血的手指才能弹出世间的绝唱。更多相关go语言如何使用第三方包 javascripton化结构体操作示例内容请查看相关栏目,小编编辑不易,再次感谢大家的支持!