主页 > 知识库 > go语言使用第三方包 json化结构体操作示例

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

热门标签:地方门户网站 百度竞价排名 铁路电话系统 呼叫中心市场需求 AI电销 网站排名优化 服务外包 Linux服务器

本文实例讲述了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语言之结构体与方法
  • Go语言基础语法之结构体及方法详解
  • go语言通过反射创建结构体、赋值、并调用对应的操作
  • Go语言-为什么返回值为接口类型,却返回结构体
  • 关于Go 空结构体的 3 种使用场景

标签:崇左 湖南 铜川 仙桃 黄山 衡水 兰州 湘潭

巨人网络通讯声明:本文标题《go语言使用第三方包 json化结构体操作示例》,本文关键词  ;如发现本文内容存在版权问题,烦请提供相关信息告之我们,我们将及时沟通与处理。本站内容系统采集于网络,涉及言论、版权与本站无关。
  • 相关文章
  • 收缩
    • 微信客服
    • 微信二维码
    • 电话咨询

    • 400-1100-266