JSON(JavaScript Object Notation) 是一種輕量級的資料交換格式,非常适合于伺服器與 JavaScript 的互動。相比XML,他更易于人閱讀和編寫,它是JavaScript的一個子集。 JSON采用完全獨立于語言的文本格式,可以在流行的語言中使用,比如C# Java C++ VB。這些特性使JSON成為理想的資料交換語言。
2. 值的有序清單(An ordered list of values)。在大部分語言中,它被了解為數組(array)。
1、對象是一個無序的“‘鍵/值’對”集合。一個對象以“{”(左括号)開始,“}”(右括号)結束。每個“名稱”後跟一個“:”(冒号);“‘名稱/值’ 對”之間使用“,”(逗号)分隔。
![](https://img.laitimes.com/img/_0nNw4CM6IyYiwiM6ICdiwiIml2ZuIGNjZDO4YjYxIjM2ATM5gTM0UzN3AzYzgjMldzNwADMfdWbp9CXt92Yu4GZjlGbh5SZslmZxl3Lc9CX6MHc0RHaiojIsJye.gif)
2、數組是值(value)的有序集合。一個數組以“[”(左中括号)開始,“]”(右中括号)結束。值之間使用“,”(逗号)分隔。
3、值(value)可以是雙引号括起來的字元(string)、數值(number)、true、false、 null、對象(object)或者數組(array)。這些結構可以嵌套。
4、字元串(string)是由雙引号包圍的任意數量Unicode字元的集合,使用反斜線轉義。一個字元(character)即一個單獨的字元串(character string)。 字元串(string)與C或者Java的字元串非常相似。
5、數值(number)也與C或者Java的數值非常相似。除去未曾使用的八進制與十六進制格式。除去一些編碼細節。
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
版權
作者:靈動生活 郝憲玮
如果你認為此文章有用,請點選底端的【推薦】讓其他人也了解此文章,
本文版權歸作者和部落格園共有,歡迎轉載,但未經作者同意必須保留此段聲明,且在文章頁面明顯位置給出原文連接配接,否則保留追究法律責任的權利。