欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

go語(yǔ)言使用第三方包 json化結(jié)構(gòu)體操作示例

 更新時(shí)間:2019年06月10日 11:59:21   作者:學(xué)習(xí)筆記666  
這篇文章主要介紹了go語(yǔ)言使用第三方包 json化結(jié)構(gòu)體操作,結(jié)合實(shí)例形式分析了Go語(yǔ)言ffjson包git安裝及結(jié)構(gòu)體轉(zhuǎn)json字符串相關(guān)操作技巧,需要的朋友可以參考下

本文實(shí)例講述了go語(yǔ)言使用第三方包 json化結(jié)構(gòu)體操作。分享給大家供大家參考,具體如下:

前提條件:安裝好操作系統(tǒng)對(duì)應(yīng)的git

go get -u github.com/pquerna/ffjson

-u參數(shù):如果本地已經(jīng)存在該包,則強(qiáng)制更新。

1、既然是把結(jié)構(gòu)體轉(zhuǎn)為json字符串,那么先來(lái)定義一個(gè)結(jié)構(gòu)體

復(fù)制代碼 代碼如下:
// 定義一個(gè)結(jié)構(gòu)體
type NewsModel struct {
 Id int
 Title string
}

2、且看ffjson這包用什么方法來(lái)把結(jié)構(gòu)體轉(zhuǎn)為json字符串

復(fù)制代碼 代碼如下:
func main()  {
 news := NewsModel{110,"hello"}
 res,err := ffjson.Marshal(news)
 if err != nil {
  fmt.Println("格式化錯(cuò)誤")
  fmt.Println(err.Error())
  return
 }
 // 得到是字節(jié)數(shù)組,所以還有轉(zhuǎn)為string
 fmt.Println(string(res))
}

打印:

{"Id":110,"Title":"hello"}

得到了一個(gè)json字符串

3、拓展

為結(jié)構(gòu)體封裝一個(gè)方法ToJson()專(zhuān)門(mén)來(lái)干這事

復(fù)制代碼 代碼如下:
package main
import (
 "fmt"
 "github.com/pquerna/ffjson/ffjson"
)
// 定義一個(gè)結(jié)構(gòu)體
type NewsModel struct {
 Id int
 Title string
}
// 定義一個(gè)方法
func (news NewsModel) ToJson() string  {
 res,err := ffjson.Marshal(news)
 if err != nil {
  return  err.Error()
 }
 // 得到是字節(jié)數(shù)組,所以還有轉(zhuǎn)為string
 return string(res)
}
func main()  {
 news := NewsModel{110,"hello"}
 fmt.Println(news.ToJson()) // 打印:{"Id":110,"Title":"hello"}
}

希望本文所述對(duì)大家go語(yǔ)言程序設(shè)計(jì)有所幫助。

相關(guān)文章

  • golang?手寫(xiě)貪吃蛇示例實(shí)現(xiàn)

    golang?手寫(xiě)貪吃蛇示例實(shí)現(xiàn)

    這篇文章主要為大家介紹了golang?手寫(xiě)貪吃蛇示例實(shí)現(xiàn),有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-07-07
  • Golang?sync.Once實(shí)現(xiàn)單例模式的方法詳解

    Golang?sync.Once實(shí)現(xiàn)單例模式的方法詳解

    Go?語(yǔ)言的?sync?包提供了一系列同步原語(yǔ),其中?sync.Once?就是其中之一。本文將深入探討?sync.Once?的實(shí)現(xiàn)原理和使用方法,幫助大家更好地理解和應(yīng)用?sync.Once,需要的可以參考一下
    2023-05-05
  • Go語(yǔ)言七篇入門(mén)教程三函數(shù)方法及接口

    Go語(yǔ)言七篇入門(mén)教程三函數(shù)方法及接口

    這篇文章主要為大家介紹了Go語(yǔ)言的函數(shù)方法及接口的示例詳解,本文是Go語(yǔ)言七篇入門(mén)系列文章,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步
    2021-11-11
  • 對(duì)Golang中的runtime.Caller使用說(shuō)明

    對(duì)Golang中的runtime.Caller使用說(shuō)明

    這篇文章主要介紹了對(duì)Golang中的runtime.Caller使用說(shuō)明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2020-12-12
  • GoLang語(yǔ)法之標(biāo)準(zhǔn)庫(kù)fmt.Printf的使用

    GoLang語(yǔ)法之標(biāo)準(zhǔn)庫(kù)fmt.Printf的使用

    fmt包實(shí)現(xiàn)了類(lèi)似C語(yǔ)言printf和scanf的格式化I/O,主要分為向外輸出內(nèi)容和獲取輸入內(nèi)容兩大部分,本文就來(lái)介紹一下GoLang語(yǔ)法之標(biāo)準(zhǔn)庫(kù)fmt.Printf的使用,感興趣的可以了解下
    2023-10-10
  • Golang IPv4 字符串與整數(shù)互轉(zhuǎn)方式

    Golang IPv4 字符串與整數(shù)互轉(zhuǎn)方式

    這篇文章主要介紹了Golang IPv4 字符串與整數(shù)互轉(zhuǎn)方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-11-11
  • 在Go語(yǔ)言程序中使用gojson來(lái)解析JSON格式文件

    在Go語(yǔ)言程序中使用gojson來(lái)解析JSON格式文件

    這篇文章主要介紹了在Go語(yǔ)言程序中使用gojson來(lái)解析JSON格式文件的方法,Go是由Google開(kāi)發(fā)的高人氣新興編程語(yǔ)言,需要的朋友可以參考下
    2015-10-10
  • Go語(yǔ)言開(kāi)發(fā)k8s之Deployment操作解析

    Go語(yǔ)言開(kāi)發(fā)k8s之Deployment操作解析

    這篇文章主要為大家介紹了Go語(yǔ)言開(kāi)發(fā)k8s之Deployment操作解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-06-06
  • golang struct, map, json之間的相互轉(zhuǎn)換

    golang struct, map, json之間的相互轉(zhuǎn)換

    本文用于記錄我在 golang 學(xué)習(xí)階段遇到的類(lèi)型轉(zhuǎn)換問(wèn)題,針對(duì)的是 json 、map、struct 之間相互轉(zhuǎn)換的問(wèn)題,感興趣的可以了解一下
    2021-06-06
  • golang踩坑實(shí)戰(zhàn)之channel的正確使用方式

    golang踩坑實(shí)戰(zhàn)之channel的正確使用方式

    Golang?channel是Go語(yǔ)言中一個(gè)非常重要的特性,除了用來(lái)處理并發(fā)編程的任務(wù)中,它還可以用來(lái)進(jìn)行消息傳遞和事件通知,這篇文章主要給大家介紹了關(guān)于golang踩坑實(shí)戰(zhàn)之channel的正確使用方式,需要的朋友可以參考下
    2023-06-06

最新評(píng)論