go练习4--json 序列号反序列化

//定义结构体
//首字母大写 , json:"msg_id" 是 tag
type Message struct {
	MsgId   string `json:"msg_id"`
	Content string `json:"content"`
}

//json 序列号反序列化
func T3_1() {
	msg := Message{"msgid_001", "contente2222222222"}
	str, err := json.Marshal(msg)
	//输出 {"msg_id":"msgid_001","content":"contente2222222222"}
	fmt.Println(string(str), err)

	var msg1 Message
	//	str := `{"changes": [{"armid":3,"Index":5}, {"armid":3,"Index":6}]}`
	//反序列化为 stuct
	err = json.Unmarshal(str, &msg1)
	//输出 {msgid_001 contente2222222222}
	fmt.Println(msg1)
	//反序列化为map
	var msg2 map[string]string
	err = json.Unmarshal(str, &msg2)
	//输出 map[msg_id:msgid_001 content:contente2222222222]
	fmt.Println(msg2)
}

  

下面的文章 写的比较详细

地址:http://www.cnblogs.com/littlepanpc/p/3965238.html

时间: 2024-10-09 13:40:33

go练习4--json 序列号反序列化的相关文章

常用json序列化/反序列化技术对比测试

目前常用的json工具有:1.json-lib:2.jakson-mapper:3.fastjson. 下面对这三种工具的性能进行简单对比测试. 测试样本:一个126K的json文件,内容为json数组. 测试方法:反序列化,读取文件中的json转化为java对象. 测试代码如下: 1 @Test 2 public void testDeserialize() throws Exception { 3 String dealer = "d:\\auto\\json\\100016109.js&q

.Net使用Newtonsoft.Json.dll(JSON.NET)对象序列化成json、反序列化json示例教程

JSON作为一种轻量级的数据交换格式,简单灵活,被很多系统用来数据交互,作为一名.NET开发人员,JSON.NET无疑是最好的序列化框架,支持XML和JSON序列化,高性能,免费开源,支持LINQ查询.目前已被微软集成于webapi框架之中,因此,熟练掌握JSON.NET相当重要,这篇文章是零度参考官网整理的示例,通过这些示例,可以全面了解JSON.NET提供的功能. Newtonsoft.Json的地址: 官网:http://json.codeplex.com/ 源码地址:https://gi

[Jackson] 使用ObjectMapper对含有任意key的JSON进行反序列化

使用ObjectMapper对含有任意key的JSON进行反序列化 在调用某个RESTful API后,返回的JSON字符串中含有没有预先定义的key,和结构固定的JSON相比,它需要一些额外的操作. 对于结构固定的JSON,使用ObjectMapper结合某个预先定义的实体类型可以非常方便地完成反序列化工作,比如对下面这样的JSON: GET /person/1 { "id": "1", "name": "dm_vincent&quo

Newtonsoft.Json.dll 反序列化JSON字符串

上一篇JSON博客<JSON入门级学习小结--JSON数据结构>中已对JSON做了简单介绍,JSON字符串数组数据样式大概是这样子的: 如今因为项目需求(asp.net web网站,前台向后台传递JSON数据,并对JSON数据处理,详述见博客< <项目经验>--通过js获取前台数据向一般处理程序传递Json数据,并解析Json数据,将前台传来的Json数据写入数据库表中 >),需要对传递的JSON数据反序列化.于是从网上找了许多JSON反序列化的例子,最终决定使用New

ServiceStack.Text 的JSON序列号和反序列化

使用 ServiceStack.Text 序列化 json的实现代码 http://www.jb51.net/article/38338.htm 中文的一个ServiceStack 序列化示例 ServiceStack de JSON序列化其的性能测试: Benchmarks for .NET's JSON Serializers http://www.servicestack.net/benchmarks/ ServiceStack 的 JSON序列化操作的一篇很不错的示例说明: Servic

Asp.Net JSON序列号与反序列化

问题的引子 先来看问题的引子. 定义一个下面这样的类,此类有Serializable属性,并且有一个属性的定义没有使用自动属性来实现. [Serializable] public class Users { public int UserID { get; set; } public string UserName { get; set; } public string UserEmail { get; set; } private string _testProperty; public st

python json 序列化反序列化 和 中文编码问题

在一个项目中,需要从云端获取一个json格式的数据,并保存到本地文件中,然后再读取出来,这中间要用到json的dumps方法和loads方法,以实现数据的序列化和反序列化.具体来说,dumps方法,可将json格式数据序列为python的相关的数据类型,通常用于打印等:loads方法则是相反,把python数据类型转换为json相应的数据类型格式要求,反序列化后可以对json数据进行各种操作.在编程过程还发现一个问题,在序列化时,中文汉字总是被转换为unicode码,在网上搜索后发现,在dump

C# json字符串反序列化

使用情景:开发中JS传递一个Json格式的字符串到后台,后台将json字符串转化成list集合 1 public static class json 2 { 3 public static List<T> JSONStringToList<T>(this string JsonStr) 4 { 5 JavaScriptSerializer Serializer = new JavaScriptSerializer(); 6 List<T> objs = Serializ

关于WP8.1开发中,调用网络API接口时JSON无法反序列化的解决方法

分享一个自动生成json的C#对象的方法网址: http://tools.wx6.org/json2csharp/ 复制后就在项目中新建一个类,类名可以按照自动生成的Root,也可以自定义,自定义的话,别忘了修改复制的类名 如自定义类名为C,则把Root改成C 关于复杂的嵌套JSON,要记住:集合中不要放集合,要构建对象来放集合,这样才能在绑定数据时调用 反序列化推荐用json.net这个开源库,引用时注意要用WinRt中的json.dll 然后用Root r=JsonConvert.Deser