C# litJson 使用方法
来源:互联网 发布:java乱码转换成中文 编辑:程序博客网 时间:2024/06/18 03:42
对一般数据进行序列化和反序列化操作
<code class="hljs cs has-numbering"> <span class="hljs-keyword">static</span> <span class="hljs-keyword">void</span> jsonTest() { <span class="hljs-comment">//</span> JsonData jd = <span class="hljs-keyword">new</span> JsonData(); jd[<span class="hljs-string">"result"</span>] = <span class="hljs-number">1</span>; jd[<span class="hljs-string">"user"</span>] = <span class="hljs-keyword">new</span> JsonData();<span class="hljs-comment">//**新添加一层关系时,需要再次 new** JsonData()</span> jd[<span class="hljs-string">"user"</span>][<span class="hljs-string">"name"</span>] = <span class="hljs-string">"zhang"</span>; jd[<span class="hljs-string">"user"</span>][<span class="hljs-string">"password"</span>] = <span class="hljs-number">123456</span>; <span class="hljs-keyword">string</span> jsonData = JsonMapper.ToJson(jd); Console.WriteLine(jsonData); <span class="hljs-comment">//</span> JsonData deJson=JsonMapper.ToObject(jsonData); <span class="hljs-keyword">int</span> result = <span class="hljs-keyword">int</span>.Parse(deJson[<span class="hljs-string">"result"</span>].ToJson()); <span class="hljs-keyword">string</span> name = deJson[<span class="hljs-string">"user"</span>][<span class="hljs-string">"name"</span>].ToString(); <span class="hljs-keyword">int</span> psw = <span class="hljs-keyword">int</span>.Parse(deJson[<span class="hljs-string">"user"</span>][<span class="hljs-string">"password"</span>].ToString()); Console.WriteLine( <span class="hljs-string">"result="</span>+result); Console.WriteLine(<span class="hljs-string">"name="</span>+name); Console.WriteLine(<span class="hljs-string">"psw="</span>+psw); }</code>
运行结果
{“result”:1,”user”:{“name”:”zhang”,”password”:123456}}
result=1
name=zhang
psw=123456
对数据对象进行序列化和反序列化操作
创建对象
<code class="hljs cs has-numbering"> class Adress { <span class="hljs-keyword">public</span> <span class="hljs-keyword">string</span> province { <span class="hljs-keyword">set</span>; <span class="hljs-keyword">get</span>; } <span class="hljs-keyword">public</span> <span class="hljs-keyword">string</span> city { <span class="hljs-keyword">set</span>; <span class="hljs-keyword">get</span>; } } class Person { <span class="hljs-keyword">public</span> <span class="hljs-keyword">string</span> name { <span class="hljs-keyword">set</span>; <span class="hljs-keyword">get</span>; } <span class="hljs-keyword">public</span> <span class="hljs-keyword">int</span> age { <span class="hljs-keyword">set</span>; <span class="hljs-keyword">get</span>; } <span class="hljs-keyword">public</span> Adress adress { <span class="hljs-keyword">set</span>; <span class="hljs-keyword">get</span>; } }</code>
操作
<code class="hljs avrasm has-numbering">static void jsonTest2() { Person p1 = new Person()<span class="hljs-comment">;</span> p1<span class="hljs-preprocessor">.name</span> = <span class="hljs-string">"zhangsan"</span><span class="hljs-comment">;</span> p1<span class="hljs-preprocessor">.age</span> = <span class="hljs-number">23</span><span class="hljs-comment">;</span> string jsonData = JsonMapper<span class="hljs-preprocessor">.ToJson</span>(p1)<span class="hljs-comment">;</span> Console<span class="hljs-preprocessor">.WriteLine</span>(<span class="hljs-string">"json="</span> + jsonData)<span class="hljs-comment">;</span> Person p = JsonMapper<span class="hljs-preprocessor">.ToObject</span><Person>(jsonData)<span class="hljs-comment">;</span> Console<span class="hljs-preprocessor">.WriteLine</span>(<span class="hljs-string">"name="</span> + p<span class="hljs-preprocessor">.name</span> + <span class="hljs-string">" age="</span> + p<span class="hljs-preprocessor">.age</span>)<span class="hljs-comment">;</span> }</code>
运行结果
json={“name”:”zhangsan”,”age”:23,”adress”:null}
name=zhangsan age=23
将对象和对象内容以键值对的形式进行保存
<code class="hljs avrasm has-numbering"> static void jsonTest3() { Person p1 = new Person()<span class="hljs-comment">;</span> p1<span class="hljs-preprocessor">.name</span> = <span class="hljs-string">"zhangsan"</span><span class="hljs-comment">;</span> p1<span class="hljs-preprocessor">.age</span> = <span class="hljs-number">23</span><span class="hljs-comment">;</span> //将对象序列化为字符串 JsonData userData = JsonMapper<span class="hljs-preprocessor">.ToObject</span>(JsonMapper<span class="hljs-preprocessor">.ToJson</span>(p1))<span class="hljs-comment">;</span> JsonData jd = new JsonData()<span class="hljs-comment">;</span> jd[<span class="hljs-string">"user1"</span>] = new JsonData()<span class="hljs-comment">;</span> jd[<span class="hljs-string">"user1"</span>]<span class="hljs-preprocessor">.Add</span>(userData)<span class="hljs-comment">;//以数组的格式保存数据</span> jd[<span class="hljs-string">"user2"</span>] = new JsonData()<span class="hljs-comment">;</span> jd[<span class="hljs-string">"user2"</span>] = userData<span class="hljs-comment">;//以对象的格式保存数据</span> string jsonData = JsonMapper<span class="hljs-preprocessor">.ToJson</span>(jd)<span class="hljs-comment">;</span> Console<span class="hljs-preprocessor">.WriteLine</span>(<span class="hljs-string">"json="</span> + jsonData)<span class="hljs-comment">;</span> //把json数据反序列化为对象 JsonData json = JsonMapper<span class="hljs-preprocessor">.ToObject</span>(jsonData)<span class="hljs-comment">;</span> Person p = JsonMapper<span class="hljs-preprocessor">.ToObject</span><Person>(json[<span class="hljs-string">"user2"</span>]<span class="hljs-preprocessor">.ToJson</span>())<span class="hljs-comment">;</span> Console<span class="hljs-preprocessor">.WriteLine</span>(<span class="hljs-string">"name="</span> + p<span class="hljs-preprocessor">.name</span> + <span class="hljs-string">" age="</span> + p<span class="hljs-preprocessor">.age</span>)<span class="hljs-comment">;</span> Person pp = JsonMapper<span class="hljs-preprocessor">.ToObject</span><Person>(json[<span class="hljs-string">"user1"</span>][<span class="hljs-number">0</span>]<span class="hljs-preprocessor">.ToJson</span>())<span class="hljs-comment">;</span> Console<span class="hljs-preprocessor">.WriteLine</span>(<span class="hljs-string">"name="</span> + pp<span class="hljs-preprocessor">.name</span> + <span class="hljs-string">" age="</span> + pp<span class="hljs-preprocessor">.age</span>)<span class="hljs-comment">;</span> }</code>
运行结果:user1以数组的形式保存,user2以对象的形式保存
json={“user1”:[{“name”:”zhangsan”,”age”:23,”adress”:null}],
“user2”:{“name”:”zhangsan”,”age”:23,”adress”:null}}
name=zhangsan age=23
name=zhangsan age=23
将集合数据进行序列化和反序列化
<code class="hljs php has-numbering"> <span class="hljs-keyword">public</span> <span class="hljs-keyword">static</span> void jsonTest4() { Person p1 = <span class="hljs-keyword">new</span> Person(); p1.name = <span class="hljs-string">"zhangsan"</span>; p1.age = <span class="hljs-number">23</span>; Adress adress1 = <span class="hljs-keyword">new</span> Adress(); adress1.province = <span class="hljs-string">"HeNan"</span>; adress1.city = <span class="hljs-string">"LuoYang"</span>; p1.adress = adress1; Person p2 = <span class="hljs-keyword">new</span> Person(); p2.name = <span class="hljs-string">"lisi"</span>; p2.age = <span class="hljs-number">20</span>; Adress adress2 = <span class="hljs-keyword">new</span> Adress(); adress2.province = <span class="hljs-string">"HeBei"</span>; adress2.city = <span class="hljs-string">"HanDan"</span>; p2.adress = adress2; <span class="hljs-keyword">List</span><Person> <span class="hljs-keyword">list</span> = <span class="hljs-keyword">new</span> <span class="hljs-keyword">List</span><Person>(); <span class="hljs-keyword">list</span>.Add(p1); <span class="hljs-keyword">list</span>.Add(p2); <span class="hljs-comment">//生成json数据</span> string listJson = JsonMapper.ToJson(<span class="hljs-keyword">list</span>); Console.WriteLine(listJson); Console.WriteLine(<span class="hljs-string">"------------------------"</span>); <span class="hljs-comment">//解析json</span> <span class="hljs-keyword">List</span><Person> personJsonList = JsonMapper.ToObject<<span class="hljs-keyword">List</span><Person>>(listJson); <span class="hljs-keyword">for</span> (int i = <span class="hljs-number">0</span>; i < personJsonList.Count; i++) { Console.WriteLine(<span class="hljs-string">"name"</span> + personJsonList[i].name); } }</code>
运行结果
[{“name”:”zhangsan”,”age”:23,”adress”:{“province”:”HeNan”,”city”:”LuoYang”}},
{“name”:”lisi”,”age”:20,”adress”:{“province”:”HeBei”,”city”:”HanDan”}}]
0 0
- C# litJson 使用方法
- C# litJson 使用方法
- C# LitJson
- C#中LitJson转Json使用方法与坑
- Unity3D LitJson 使用方法
- C# LitJson基础读写
- C# 调用litJson 方法
- JSON库LitJSON的使用方法
- [C#技术] .NET平台开源JSON库LitJSON的使用方法
- [C#技术] .NET平台开源JSON库LitJSON的使用方法(转载)
- C#使用LitJson解析JSON
- C#使用LitJson解析JSON
- C#使用LitJson解析JSON
- C#使用LitJson解析JSON
- C#使用LitJson解析JSON
- C#使用LitJson解析JSON
- C#使用LitJson解析JSON
- C#使用LitJson解析JSON
- 由ssh引发的对/etc/init.d/目录的思考
- c/c++ 复习随记(3)----fwqlzz love is for ever
- 如何成为一名优秀的软件开发工程师
- ios中的字符串等的拼接+for循环实例
- 低版本Firefox支持innerText属性兼容方法
- C# litJson 使用方法
- 树莓派及其他硬件平台国内外Linux镜像站全汇总
- C++第五次上机作业
- 使用Spring MVC统一异常处理实战
- 普通人如何合理的理财投资
- 软件测试的类型和方法
- stm8s eeprom
- figure & figcaption 、details & summary 、 mark
- PhysX SDK物理引擎开发包使用教程