1. 程式人生 > >[C#]JSONObject解析json,C# asp.net JSON解析

[C#]JSONObject解析json,C# asp.net JSON解析

前言:公司最近遇到問題,以往C#的介面通訊都是走xml的形式,因為現在的主流介面都採用json資料格式,但c#中並沒有提供特別的方法幫助開發者,解析和生成都非常麻煩,我做為一個移動端開發者,於是想到了將java的解析方法移植到c#中去,漫長的移植工作開始了,經過一段時間的努力,在java中的很多api在c#中都沒有,於是乎,找類似方法進行替代,不斷試驗,最終完整版的json解析與生成的dll檔案生成了,下載連結在下面,歡迎下載!

1.匯入com.force.json.dll

(1)在專案中新增引用

 

(2)選擇瀏覽按鈕


(3)選擇json.dll,並點選確定,此時在引用中多出json的引用

 

(4)在類中新增引用using com.force.json;

2.建立JSONObject

(1).使用方法如下:(建立JSONObject,並列印內容)

JSONObject json = new JSONObject();
json.put("sex", "男");
json.put("age", 123);
json.put("name", "張三");
Console.WriteLine(json.ToString());

(2).執行效果如下:

{"sex":"男","age":123,"name":"張三"}

3.建立JSONArray

(1).使用方法如下:(建立JSONObject
加入到JSONArray 中,並列印內容)

 
JSONObject json = new JSONObject();
json.Put("sex", "男");
json.Put("age", 123);
json.Put("name", "張三");
JSONArray array = new JSONArray();
array.Put(json);
Console.WriteLine(array.ToString());

(2).執行效果如下:

[{"sex":"男","age":123,"name":"張三"}]
 

4.建立完整的JSON例項

(1).使用方法如下:(建立JSONObject

加入到JSONArray 中,再把JSONArray 加入到JSONObject中,並列印內容)

JSONObject rootJson = new JSONObject();
 
JSONObject json = new JSONObject();
json.Put("sex", "男");
json.Put("age", 123);
json.Put("name", "張三");
JSONArray array = new JSONArray();
array.Put(json);
 
rootJson.Put("content", array);
 
Console.WriteLine(rootJson .ToString());


(2).執行效果如下:

{"content":[{"sex":"男","age":123,"name":"張三"}]}
 

5.解析JSONObject

(1).使用方法如下:(解析JSONObject的字串型別name和整型age欄位,並列印內容)

 
JSONObject json = new JSONObject();
json.Put("sex", "男");
json.Put("age", 123);
json.Put("name", "張三");
 
Console.WriteLine(json.GetString("name"));
Console.WriteLine(json.GetInt("age"));

(2).執行效果如下:

張三
123
 

6.解析JSONArray 

(1).使用方法如下:(從JSONArray 中獲取到第1JSONObject,並解析name的值)

JSONObject json = new JSONObject();
json.Put("sex", "男");
json.Put("age", 123);
json.Put("name", "張三");
JSONArray array = new JSONArray();
array.Put(json);
Console.WriteLine(array.GetJSONObject(0).GetString("name"));
 

(2).執行效果如下:

張三

7.混合解析

6.解析JSONArray 

(1).使用方法如下:(從JSONArray 中獲取到第1JSONObject,並解析name的值)

JSONObject json = new JSONObject("{'sex':'男','name':'張三','data':[{'book':'一本書'},{'book':'二本書'}]}");
Console.WriteLine(json.Get("sex"));
Console.WriteLine(json.Get("name"));
JSONArray datas = json.GetJSONArray("data");
Console.WriteLine(datas.GetJSONObject(0).GetString("book"));

(2).執行效果如下:

男
張三
一本書

Github開源地址:

https://github.com/CCwant/ForceJson

DLL下載地址:

http://download.csdn.net/detail/cc_want/9890365