[小贱] 小贱学C#笔记之Newtonsoft.Json(一)
来源:互联网 发布:算法推荐类app 编辑:程序博客网 时间:2024/04/29 07:22
原文链接:http://www.manew.com/thread-42749-1-1.html
小贱好久没来啦,一方面因为新工作正在适应,一方面蛮牛大神人才辈出在各方面为新手们解决了很多问题(包括我,嘿嘿),小贱着实也是不敢班门弄斧了哈!今天小贱给各位简单介绍Newtonsoft.Json这个库的使用。
不管是在游戏开发,还是应用开发中,我们会经常的使用到XML文件和Json格式。先对这俩稍作了解:
1.XML是文件类型,Json是一种格式:简单来说,XML是一个完整的文件(当然在文件中书写格式就叫XML格式了),它有自己的规范、格式等,而Json则纯粹是一种“写法”(我不知道用这个词来解释“格式”是否准确),有时候Json就是一个字符串。;
2.两者在格式上都类似于键值对的形式,XML格式有<key>value</key>,<key value=“...”/>等,而Json格式就相对简单,如:{“key”:“value”};
3.XML和Json都会被用于数据的传输,但在传输速度上,Json应该会更快速一些;
4.在阅读性上,老实讲,我绝对是不想去看Json数据的!
5.解析效率上,Json会更加快速一些。
我们也不作过于深入的比较,毕竟在实际中用上了,自然会明白到底哪一个比较好用了。下面我们就说说今天的主角:Newtonsoft.Json。
1.将XML格式转化为Json格式
[C#] 纯文本查看 复制代码
1
using
System.Xml;
using
Newtonsoft.Json;
// 主角当然不能少
[C#] 纯文本查看 复制代码
01
02
03
04
05
06
07
08
09
10
/// <summary>
/// Xml文件转Json返回
/// </summary>
/// <param name="path">Xml文件路径</param>
public
override
string
Xml2Json(
string
path)
{
XmlDocument doc =
new
XmlDocument();
doc.Load(path);
// 通过xml的路径来读取xml文件
string
json = JsonConvert.SerializeXmlNode(doc.DocumentElement, Newtonsoft.Json.Formatting.None,
true
);
return
json;
}
代码中JsonConvert.SerializeXmlNode(XmlNode node,Formatting formatting,bool omitRootObject)就是用来将XML格式转化成Json格式的函数,其中第一个参数是XML文件的根节点,第二个是输出的格式,第三个是选择是否显示根节点。(参考:http://www.newtonsoft.com/json/help/html/M_Newtonsoft_Json_JsonConvert_SerializeXmlNode_2.htm)
2.将Json格式转化为XML格式
[C#] 纯文本查看 复制代码
1
using
System.Xml; [/size]
[size=4]
using
Newtonsoft.Json;
// 相同的引用
[C#] 纯文本查看 复制代码
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
/// <summary>
/// Json转Xml文件
/// </summary>
/// <param name="json">Json字符串</param>
/// <param name="savePath">保存路径</param>
public
void
Json2Xml(
string
json,
string
savePath)
{
try
{
XmlDocument doc = JsonConvert.DeserializeXmlNode(json,
"root"
);
CreateXmlFile(doc, savePath);
//这里为了看得更加直观,我是将完成转化的XML格式保存到了xml文件中,这样就不需要再遍历节点来打印出来
Console.WriteLine(
"Xml文件保存位置:"
+ savePath);
}
catch
(Exception e)
{
Console.WriteLine(e.Message);
}
}
代码中JsonConvert.DeserializeXmlNode(string value,string deserializeRootElementName)就是用来将XML格式转化成Json格式的函数,其中第一个参数是Json格式的字符串,第二个是为了添加一个各节点。(参考:http://www.newtonsoft.com/json/help/html/M_Newtonsoft_Json_JsonConvert_DeserializeXmlNode_1.htm)
今天小贱就简单的先让各位了解Newtonsoft.Json这个库的两个最简单的用法,当然了Newtonsoft.Json可是很强大的哦,绝对是在项目中为我们提高开发效率的利器{:soso_e129:}!
0 0
- [小贱] 小贱学C#笔记之Newtonsoft.Json(一)
- C# Newtonsoft.Json之LINQ To Json实例(一)
- C#笔记6——操作JSON(Newtonsoft)
- C# Newtonsoft json
- C# Newtonsoft.Json 操作
- C# Json.NET序列化之Newtonsoft.Json
- C# Newtonsoft.Json之LINQ To Json实例(二)
- C# 解析JSON -- Newtonsoft.Json
- C# 解析json Newtonsoft.json
- C#解析Json数据(利用Newtonsoft.Json库)
- KING_C#学习之Newtonsoft.Json(一)_简单格式转换
- Newtonsoft.Json简要使用笔记
- c#操作json数据使用newtonsoft.json
- c#操作json使用newtonsoft.json
- C# newtonsoft.json.dll 解析Json
- C# 使用Newtonsoft.Json解析嵌套json
- Newtonsoft.Json(Json.Net)学习笔记
- Newtonsoft.Json(Json.Net)学习笔记
- CArray的用法
- win7音量系统图标无法打开
- 如何进入百度、阿里,一个6年Android老司机的面经
- C数据类型的长度
- Js_闭包
- [小贱] 小贱学C#笔记之Newtonsoft.Json(一)
- PHP获取用户访问IP地址的5种方法
- 使用JDBC 访问数据库
- 想要骑驴找马,这些事一定要注意!
- SPI调试小结
- nodejs ssh2 shell函数发送命令不成功的问题
- Dubbo实战(三)多注册中心配置
- opencv学习(四)之像素遍历三种方式
- 采样之拒绝采样