前言 JSON(javascript Object Notation) 是一种轻量级的数据交换格式。简单地说,jsON 可以将 JavaScript 对象中表示的一组数据转换为字符串
JSON(javascript Object Notation) 是一种轻量级的数据交换格式。简单地说,jsON 可以将 JavaScript 对象中表示的一组数据转换为字符串,然后就可以在函数之间轻松地传递这个字符串,或者在异步应用程序中将字符串从 WEB 客户机传递给服务器端程序。这个字符串看起来有点儿古怪,但是 JavaScript 很容易解释它,而且 JSON 可以表示比"名称 / 值对"更复杂的结构。例如,可以表示数组和复杂的对象,而不仅仅是键和值的简单列表。
它所具有的特性:
在.Net中内置了读写Json的对象就是 DataContractJsonSerializer
和 JavaScriptSerializer
这两个。但是这个是在.Net 3.5之后才支持的。并且性能上并不优秀。
性能对比图如下:
这是Json.Net 5与.NET内置对象的性能对比图,而现在Json.Net的版本已经到达了Version 6.0.1 ,相信它会有更好的表现。JSON.NET是开源的,下载地址:Http://json.codeplex.com/,这里有完整的源代码,当然也可以参考http://james.newtonking.com/这里。
jb51下载地址:https://www.jb51.net/codes/571698.html
当然通过VS进入Nuget管理包也可以进行下载Json.Net的程序包
下面我们来简单的通过实例进行初步了解JSON.NET。
首先定义一个实体类对象
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 = "aehyok@vip.qq.com",
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": "aehyok@vip.qq.com",
"Active": true,
"CreatedDate": "2014-03-27T00:00:00Z",
"Roles": [
"aehyok",
"Kris"
]
}
继续使用上面的实体类
现在是先定义一个Json的字符串,我们也可以将上面生成的Json字符串进行简单的修改,然后进行反序列化处理
string json = @"{
'Email': 'aehyok@vip.qq.com',
'Active': true,
'CreatedDate': '2014-03-27T00:00:00Z',
'Roles': [
'aehyok',
'Kris'
]
}";
Account account = JsonConvert.DeserializeObject<Account>(json);
通过调试得到的数据为
首先还是定义一个Json字符串,然后对其进行转换
string json = @"{
'@Id': 1,
'Email': 'aehyok@viq.qq.com',
'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");
转换结果为
现在就是需要先定义一个简单的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用法介绍的文章就介绍到这了。希望对大家的学习有所帮助,也希望大家多多支持编程网。
--结束END--
本文标题: Json.Net6.0用法介绍
本文链接: https://www.lsjlt.com/news/160615.html(转载时请注明来源链接)
有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341
下载Word文档到电脑,方便收藏和打印~
2023-05-21
2023-05-21
2023-05-21
2023-05-21
2023-05-20
2023-05-20
2023-05-20
2023-05-20
2023-05-20
2023-05-20
回答
回答
回答
回答
回答
回答
回答
回答
回答
回答
0