LitJson 简单实用Demo
JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式。它基于JavaScript(Standard ECMA-262 3rd Edition - December 1999)的一个子集。 JSON采用完全独立于语言的文本格式,但是也使用了类似于C语言家族的习惯(包括C, C++, C#, Java, JavaScript, Perl, Python等)。这些特性使JSON成为理想的数据交换语言。易于人阅读和编写,同时也易于机器解析和生成。
如果曾经使用过Json,就会清楚Json可以分为两个部分:
- Json Object(A collection of name/value pairs)
- JSON Array (An ordered list of values)
解析JSON的开源包非常多,在各种场合使用非常广泛,尤其长于网络传输。
本文介绍使用LitJson,并用C#语言来介绍使用JSON,可以在C#应用程序,web程序,还有Unity3d C#脚本中使用。
第一步:先去下载LitJson并导入当前的项目。
第二步:引用LitJson
using System; using System.Collections.Generic; using System.Linq; using System.Text; using LitJson; namespace ConsoleApplication2 { class Program { static void Main(string[] args) { var per = new person() { Age = 12, Birthday = new DateTime(1985, 3, 28), Name = "abc" }; var per1 = new person() { Age = 13, Birthday = new DateTime(1986, 4, 28), Name = "def" }; var list = new List<person>(); list.Add(per); list.Add(per1); var str = LitJson.JsonMapper.ToJson(list); Console.WriteLine(str); var per2 = JsonMapper.ToObject<List<person>>(str); Console.WriteLine(string.Format(@"age={0} name={1} birthday={2}", per2[1].Age, per2[1].Name, per2[1].Birthday)); string json = @"[ { ""Name"" : ""www.87cool.com"", ""Age"" : 3, ""Birthday"" : ""07/17/2007 00:00:00"" }, { ""Name"" : ""www.12cool.com"", ""Age"" : 31, ""Birthday"" : ""07/17/2007 00:00:00"" }]"; var per3 = JsonMapper.ToObject<List<person>>(json); Console.WriteLine(string.Format(@"age={0} name={1} birthday={2}", per3[0].Age, per3[0].Name, per3[0].Birthday)); Console.Read(); } } class person { private string name; private int age; private DateTime birthday; public string Name { get; set; } public int Age { get; set; } public DateTime Birthday { get; set; } public person() { } } }