对于go语言你了解多少,以前有过这方面知识的积累吗?小猿圈go语言讲师就给你分享发一些go语言的知识点,希望对你有所帮助,分享的是go语言使用第三方包操作示例。
go语言使用第三方包和json化结构体操作,结合实例形式分析了Go语言ffjson包git安装及结构体转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语言有一定的帮助,你刚开始看的时候一定会很懵,但是相信我只要坚持努力地学习,学会Javago语言不是什么难事,多看多练GO语言自学交流群:993092624,遇到难题不会的可以到小猿圈网站上去看看的,有人会为小猿圈怎么上搜索就可以了。
网友评论