小猿圈go語言之使用第三方包操作示例
阿新 • • 發佈:2019-08-06
對於go語言你瞭解多少,以前有過這方面知識的積累嗎?小猿圈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語言有一定的幫助,持之以恆很重要,百分之99的人不是天才,都是自己的堅持和心態註定了他學習的成功,所以遇到難題不會的可以到小猿圈網站上去看看的,