天天看點

Json簡介入門

JSON(JavaScript Object Notation) 是一種輕量級的資料交換格式,非常适合于伺服器與 JavaScript 的互動。相比XML,他更易于人閱讀和編寫,它是JavaScript的一個子集。 JSON采用完全獨立于語言的文本格式,可以在流行的語言中使用,比如C# Java C++ VB。這些特性使JSON成為理想的資料交換語言。

  2. 值的有序清單(An ordered list of values)。在大部分語言中,它被了解為數組(array)。

1、對象是一個無序的“‘鍵/值’對”集合。一個對象以“{”(左括号)開始,“}”(右括号)結束。每個“名稱”後跟一個“:”(冒号);“‘名稱/值’ 對”之間使用“,”(逗号)分隔。

  

Json簡介入門

2、數組是值(value)的有序集合。一個數組以“[”(左中括号)開始,“]”(右中括号)結束。值之間使用“,”(逗号)分隔。

Json簡介入門

3、值(value)可以是雙引号括起來的字元(string)、數值(number)、true、false、 null、對象(object)或者數組(array)。這些結構可以嵌套。

Json簡介入門

4、字元串(string)是由雙引号包圍的任意數量Unicode字元的集合,使用反斜線轉義。一個字元(character)即一個單獨的字元串(character string)。 字元串(string)與C或者Java的字元串非常相似。

Json簡介入門

5、數值(number)也與C或者Java的數值非常相似。除去未曾使用的八進制與十六進制格式。除去一些編碼細節。

Json簡介入門

JSON.Net類庫(http://json.codeplex.com/)提供了轉化實體類為Json格式資料的能力,即序列化和反序列化,同樣提供了JSON To Linq的功能,下面是執行個體代碼:

Product product = new Product();

product.Name = "Apple";

product.Expiry = new DateTime(2008, 12, 28);

product.Price = 3.99M;

product.Sizes = new string[] { "Small", "Medium", "Large" };

 //序列化為JSON格式資料

string output = JsonConvert.SerializeObject(product);

//{

//  "Name": "Apple",

//  "Expiry": "\/Date(1230375600000+1300)\/",

//  "Price": 3.99,

//  "Sizes": [

//    "Small",

//    "Medium",

//    "Large"

//  ]

//}

 //反序列化為實體類對象

Product deserializedProduct = JsonConvert.DeserializeObject<Product>(output);

參考:

http://www.json.org/

http://baike.baidu.com/view/136475.htm?fr=ala0_1_1

版權

作者:靈動生活 郝憲玮

如果你認為此文章有用,請點選底端的【推薦】讓其他人也了解此文章,

Json簡介入門

本文版權歸作者和部落格園共有,歡迎轉載,但未經作者同意必須保留此段聲明,且在文章頁面明顯位置給出原文連接配接,否則保留追究法律責任的權利。