华域联盟 Golang go语言使用第三方包 json化结构体操作示例

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

本文实例讲述了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语言使用第三方包 json化结构体操作示例

转载请保留出处和原文链接:https://www.cnhackhy.com/110539.htm

本文来自网络,不代表华域联盟立场,转载请注明出处。

作者: sterben

发表回复

联系我们

联系我们

2551209778

在线咨询: QQ交谈

邮箱: [email protected]

工作时间:周一至周五,9:00-17:30,节假日休息

关注微信
微信扫一扫关注我们

微信扫一扫关注我们