Newtonsoft.Json 使用 C#序列號json,反序列化物件
阿新 • • 發佈:2019-01-03
使用方法比較簡單
1.首先下載你需要的版本,然後在應用程式中引用Newtonsoft.Json.dll 檔案.
2.引用名稱空間
3.為了更好的理解,C#環境下我建立了一個Person類
4.利用Newtonsoft.Json序列號強型別集合,所以首先初始化一個強型別集合(迴圈建立了10個Person新增到了list集合中)
5.初始化上面的list集合為 json 格式字串 string serialStr = JavaScriptConvert.SerializeObject(list); 下面截圖可以看到 serialStr 已經把list序列號成json格式.
輸出到頁面後的json字串
6.接著反序列化此json字串為list強型別集合 程式碼: List listPerson = new List(); listPerson = JavaScriptConvert.DeserializeObject>(serialStr); 斷點處 監視 listPerson 集合,已經發現有10個Person物件,如下圖
7.下面序列號和反序列化一個物件,我們這裡以 list[0] 這個Person 為例子
程式碼:string serialOne = JavaScriptConvert.SerializeObject(list[0]);
看斷點截圖此物件已經被序列號成json格式.
8.反序列化上面的serialOne 為Person物件
程式碼:Person p = JavaScriptConvert.DeserializeObject(serialOne,typeof(Person)) as Person;
從斷點監視視窗可以看到 此字串已經被反序列化成Person物件.
另外:
2.引用名稱空間
3.為了更好的理解,C#環境下我建立了一個Person類
4.利用Newtonsoft.Json序列號強型別集合,所以首先初始化一個強型別集合(迴圈建立了10個Person新增到了list集合中)
5.初始化上面的list集合為 json 格式字串 string serialStr = JavaScriptConvert.SerializeObject(list); 下面截圖可以看到 serialStr 已經把list序列號成json格式.
輸出到頁面後的json字串
6.接著反序列化此json字串為list強型別集合 程式碼: List listPerson = new List(); listPerson = JavaScriptConvert.DeserializeObject>(serialStr); 斷點處 監視 listPerson 集合,已經發現有10個Person物件,如下圖
序列化JSON
Classifyinfo = Json.JsonInfo("200", JsonConvert.SerializeObject(dt)); //這裡的dt是datatable
如果序列化JSON直接用的是datatable的話反序列化直接用
DataTable dt=(DataTable)JsonConvert.DeserializeObject<DataTable>(JsonData);