分享web开发知识

注册/登录|最近发布|今日推荐

主页 IT知识网页技术软件开发前端开发代码编程运营维护技术分享教程案例
当前位置:首页 > 网页技术

json

发布时间:2023-09-06 02:32责任编辑:彭小芳关键词:jsjson
Json数据协议

Json数据协议

  1. 导入包:Import “encoding/json”
  2. 序列化: json.Marshal(data interface{})
  3. 反序列化: json.UnMarshal(data []byte, ?v ?interface{})
package mainimport ( ???"encoding/json" ???"fmt")type User struct { ???UserName string `json:"user_name"` ???NickName string `json:"nick_name"` ???Age int ???Birthday string ???Sex string ???Email string ???Phone string}func testStruct() { ???user1 := User{ ???????UserName:"user1", ???????NickName: "阿三", ???????Age: 18, ???????Birthday: "1999-9-9", ???????Sex: "男", ???????Email: "1234567890@qq.com", ???????Phone: "666666", ???} ???data, err := json.Marshal(user1) ???if err != nil { ???????fmt.Println(err) ???????return ???} ???fmt.Println(string(data))}func testMap() { ???var mp map[string]interface{} ???mp = make(map[string]interface{}) ???//因为map的值是空接口,所以值可以是任何类型 ???mp["username"] = "user1" ???mp["age"] = 16 ???mp["sex"] = "女" ???mp["score"] = 99.5 ???data, err := json.Marshal(mp) ???if err != nil { ???????fmt.Println(err) ???????return ???} ???fmt.Println(string(data))}func testSlice() { ???var s []map[string]interface{} ???var mp map[string]interface{} ???mp = make(map[string]interface{}) ???//因为map的值是空接口,所以值可以是任何类型 ???mp["username"] = "user66" ???mp["age"] = 17 ???mp["sex"] = "女" ???mp["score"] = 100 ???s = append(s, mp) ???//因为map的值是空接口,所以值可以是任何类型 ???mp["username"] = "user88" ???mp["age"] = 18 ???mp["sex"] = "男" ???mp["score"] = 10 ???s = append(s, mp) ???data, err := json.Marshal(s) ???if err != nil { ???????fmt.Println(err) ???????return ???} ???fmt.Println(string(data))}func main() { ???testStruct() ???testMap() ???testSlice()}

输出:{"user_name":"user1","nick_name":"阿三","Age":18,"Birthday":"1999-9-9","Sex":"男","Email":"1234567890@qq.com","Phone":"666666"}
br/>{"user_name":"user1","nick_name":"阿三","Age":18,"Birthday":"1999-9-9","Sex":"男","Email":"1234567890@qq.com","Phone":"666666"}
[{"age":18,"score":10,"sex":"男","username":"user88"},{"age":18,"score":10,"sex":"男","username":"user88"}]

Process finished with exit code 0

json

原文地址:http://blog.51cto.com/5660061/2347953

知识推荐

我的编程学习网——分享web前端后端开发技术知识。 垃圾信息处理邮箱 tousu563@163.com 网站地图
icp备案号 闽ICP备2023006418号-8 不良信息举报平台 互联网安全管理备案 Copyright 2023 www.wodecom.cn All Rights Reserved