结构体序列化

func main() {
var j = js{
Name: "zhangsan",
Age: 16,
Sal: 1500.3,
Intro: "aihao lanqiu",
} json1, _ := json.Marshal(j)
fmt.Println(string(json1))
mp()
slic()
}

map序列化

func mp() {
var a = map[string]interface{}{
"Name": "lisi",
"Age": 16,
"Sal": 22.33,
} js, _ := json.Marshal(a)
fmt.Println(string(js))
}

切片序列化

func slic() {
var slice = []map[string]interface{}{
map[string]interface{}{
"Name": "lisi",
"Age": 16,
"Sal": 22.33,
},
map[string]interface{}{
"Name": "zhangsan",
"Age": 22,
"Sal": 1122.33,
},
} js, _ := json.Marshal(slice)
fmt.Println(string(js))
}

切片序列化后返回的是一个数组,因为切片中包含两个元素,即切片包含两个切片故为一个数组

package main

import (
"encoding/json"
"fmt"
) type js struct {
Name string
Age int
Sal float32
Intro string
} func mp() {
var a = map[string]interface{}{
"Name": "lisi",
"Age": 16,
"Sal": 22.33,
} js, _ := json.Marshal(a)
fmt.Println(string(js))
} func slic() {
var slice = []map[string]interface{}{
map[string]interface{}{
"Name": "lisi",
"Age": 16,
"Sal": 22.33,
},
map[string]interface{}{
"Name": "zhangsan",
"Age": 22,
"Sal": 1122.33,
},
} js, _ := json.Marshal(slice)
fmt.Println(string(js))
} func main() {
var j = js{
Name: "zhangsan",
Age: 16,
Sal: 1500.3,
Intro: "aihao lanqiu",
} json1, _ := json.Marshal(j)
fmt.Println(string(json1))
mp()
slic()
}

基础类型结构化

无意义

package main

import (
"encoding/json"
"fmt"
) func main() {
var a = 1
var s = "abc" a1, _ := json.Marshal(a)
s1, _ := json.Marshal(s) fmt.Println(string(a1))
fmt.Println(string(s1))
}

golang json序列化的更多相关文章

  1. Golang之json序列化(struct,int,map,slice)

    老规矩,直接上代码 package main import ( "encoding/json" "fmt" ) //把结构体都改小写 type User str ...

  2. .Net深入实战系列—JSON序列化那点事儿

    序 当前主流的序列化JSON字符串主要有两种方式:JavaScriptSerializer及Json.net(Nuget标识:Newtonsoft.Json).JavaScriptSerializer ...

  3. Newtonsoft.Json 序列化和反序列化 时间格式【转】

    1.JSON序列化 string JsonStr= JsonConvert.SerializeObject(Entity); eg:   A a=new A(); a.Name="Elain ...

  4. [.net 面向对象程序设计进阶] (13) 序列化(Serialization)(五) Json 序列化利器 Newtonsoft.Json 及 通用Json类

    [.net 面向对象程序设计进阶] (13) 序列化(Serialization)(五) Json 序列化利器 Newtonsoft.Json 及 通用Json类 本节导读: 关于JSON序列化,不能 ...

  5. DotNet的JSON序列化与反序列化

    JSON(JavaScript Object Notation)JavaScript对象表示法,它是一种基于文本,独立于语言的轻量级数据交换格式.在现在的通信中,较多的采用JSON数据格式,JSON有 ...

  6. C#中JSON序列化和反序列化

    有一段时间没有到博客园写技术博客了,不过每天逛逛博客园中大牛的博客还是有的,学无止境…… 最近在写些调用他人接口的程序,用到了大量的JSON.XML序列化和反序列化,今天就来总结下json的序列化和反 ...

  7. 使用JSON.Net(Newtonsoft.Json)作为ASP.Net MVC的json序列化和反序列化工具

    ASP.Net MVC默认的JSON序列化使用的是微软自己的JavaScriptSerializer.性能低不说,最让人受不了的是Dictionary<,>和Hashtable类型居然对应 ...

  8. Windows Phone 六、JSON序列化

    JSON序列化 public class Person { public int Id { get; set; } public string Name { get; set; } public in ...

  9. [MVC_Json序列化]MVC之Json序列化循环引用

    在做MVC项目时,难免会遇到Json序列化循环引用的问题,大致错误如下 错误1:序列化类型为“...”的对象时检测到循环引用. 错误2:Self referencing loop detected f ...

随机推荐

  1. 搭建gogs常见问题

    1.无法连接ssh,显示connection refuse. 原因是“custom/conf/app.ini”没有开启ssh功能,改为以下配置就行了  START_SSH_SERVER = true ...

  2. 【支付宝】支付 系统繁忙,请稍后再试(ALIN10146)

    https://openclub.alipay.com/read.php?tid=6918&fid=60 我碰到的是这个问题导致 把signType 改为  RSA2   改成      

  3. Linux 遍历目录下面所有文件,将目录名、文件名转为小写

    当你从 Windows 服务器换到 Linux 服务器的时候,以前的上传目录的目录名.文件名会遇到大小写的问题.在 Windows 环境下面没有文件区分大小写的概念,而 Linux 却有严格的文件名大 ...

  4. Nagios 配置自动发邮件功能

    安装sendmailyum install -y sendmail* mailx 修改防火墙设置,添加25端口到防火墙vi /etc/sysconfig/iptables 重启 iptables.se ...

  5. python3 列表list

    列表用中括号表示[]: list()创建一个列表: 是可变的: 可以被迭代,也可以被切片: +组合列表,*重复列表: 可以使用del删除元素,del L[index]; 方法: append(obj) ...

  6. 【CF802C】Heidi and Library(网络流)

    [CF802C]Heidi and Library(网络流) 题面 CF 洛谷 题解 前面两个Easy和Medium都是什么鬼玩意啊.... 不难发现如果这天的要求就是第\(a_i\)种书的话,那么\ ...

  7. 【BZOJ5335】[TJOI2018]智力竞赛(二分图匹配)

    [BZOJ5335][TJOI2018]智力竞赛(二分图匹配) 题面 BZOJ 洛谷 题解 假装图不是一个DAG想了半天,.发现并不会做. 于是假装图是一个DAG. 那么显然就是二分答案,然后求一个最 ...

  8. Gym - 100989L

    After the data structures exam, students lined up in the cafeteria to have a drink and chat about ho ...

  9. Ubuntu18.04下给Jupyter-NoteBook设置默认工作路径(附Win设置)

    上一篇Jupyter的文章:https://www.cnblogs.com/dotnetcrazy/p/9201976.html Linux 生成配置文件:jupyter-notebook --gen ...

  10. 200行Go代码实现自己的区块链——区块生成与网络通信

    go启动后,可以用telnet登录访问. 注意端口配置写在.env里面. 源码:https://github.com/mycoralhealth/blockchain-tutorial/tree/ma ...