在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
前言JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式。简单地说,JSON 可以将 JavaScript 对象中表示的一组数据转换为字符串,然后就可以在函数之间轻松地传递这个字符串,或者在异步应用程序中将字符串从 Web 客户机传递给服务器端程序。这个字符串看起来有点儿古怪,但是 JavaScript 很容易解释它,而且 JSON 可以表示比"名称 / 值对"更复杂的结构。例如,可以表示数组和复杂的对象,而不仅仅是键和值的简单列表。 它所具有的特性:
在.Net中内置了读写Json的对象就是 性能对比图如下: 这是Json.Net 5与.NET内置对象的性能对比图,而现在Json.Net的版本已经到达了Version 6.0.1 ,相信它会有更好的表现。JSON.NET是开源的,下载地址:http://json.codeplex.com/,这里有完整的源代码,当然也可以参考http://james.newtonking.com/这里。 ogeek下载地址:https://www.ogeek.net/codes/571698.html 当然通过VS进入Nuget管理包也可以进行下载Json.Net的程序包 下面我们来简单的通过实例进行初步了解JSON.NET。
Serialize an Object——序列化一个对象首先定义一个实体类对象 public class Account { public string Email { get; set; } public bool Active { get; set; } public DateTime CreatedDate { get; set; } public IList<string> Roles { get; set; } } 实例化实体类,然后进行序列化为Json字符串 Account account = new Account() { Email = "[email protected]", Active = true, CreatedDate = new DateTime(2014, 3, 27, 0, 0, 0, DateTimeKind.Utc), Roles = new List<string>{"aehyok","Kris" } }; string json = JsonConvert.SerializeObject(account, Formatting.Indented); 得到的json字符串结果为 { "Email": "[email protected]", "Active": true, "CreatedDate": "2014-03-27T00:00:00Z", "Roles": [ "aehyok", "Kris" ] } Deserialize an Object——反序列化一个对象继续使用上面的实体类 现在是先定义一个Json的字符串,我们也可以将上面生成的Json字符串进行简单的修改,然后进行反序列化处理 string json = @"{ 'Email': '[email protected]', 'Active': true, 'CreatedDate': '2014-03-27T00:00:00Z', 'Roles': [ 'aehyok', 'Kris' ] }"; Account account = JsonConvert.DeserializeObject<Account>(json); 通过调试得到的数据为 Convert JSON to XML——将JSON转换为XML首先还是定义一个Json字符串,然后对其进行转换 string json = @"{ '@Id': 1, 'Email': '[email protected]', 'Active': true, 'CreatedDate': '2014-01-20T00:00:00Z', 'Roles': [ 'Kris', 'aehyok' ], 'Team': { '@Id': 2, 'Name': 'Software Developers', 'Description': 'Creators of fine software products and services.' } }"; XNode node = JsonConvert.DeserializeXNode(json, "Root"); 转换结果为 Convert XML to JSON——将XML转换为JSON现在就是需要先定义一个简单的XML字符串,然后对其进行转换处理 string xml = @"<?xml version='1.0' standalone='no'?> <root> <person id='1'> <name>aehyok</name> <url>http://www.google.com</url> </person> <person id='2'> <name>Kris</name> <url>http://www.baidu.com</url> </person> </root>"; XmlDocument doc = new XmlDocument(); doc.LoadXml(xml); string json = JsonConvert.SerializeXmlNode(doc); 通过调试得到的结果为 其他功能简介
到此这篇关于Json.Net6.0用法介绍的文章就介绍到这了。希望对大家的学习有所帮助,也希望大家多多支持极客世界。 |
请发表评论