JSON解析

来源:互联网 发布:农业网络 编辑:程序博客网 时间:2024/06/01 23:39

Newtonsoft.Json.dll 下载  http://json.codeplex.com/


比较

主要类命名空间限制内建LINQ支持DataContractJsonSerializerSystem.Runtime.Serialization.Json通用否JavaScriptSerializerSystem.Web.Script.Serialization只能在Web环境使用否JsonArray、JsonObject、JsonValueSystem.Json只能在Silverlight中使用是JsonConvert、JArray、JObject、JValue、JPropertyNewtonsoft.Json通用是


JSON

{    "Model": [        {            "ModelName": "1",            "Table": [                {                    "TeShu": "1",                    "BeginTime": "2013-08-06",                    "Remark": "1",                    "TeamRefundRemark": "1",                    "Phone": "1",                    "CabinHeard": {                        "ContentT1": "1",                        "ContentT2": "1",                        "ContentT3": "1",                        "ContentB1": "2",                        "ContentB2": "3",                        "ContentB3": "",                        "IsShow": "1"                    },                    "CabinList": [                        {                            "Cabin": "1",                            "ContentT1": "1",                            "ContentT2": "1",                            "ContentT3": "1",                            "ContentB1": "1",                            "ContentB2": "1",                            "ContentB3": "undefined"                        },                        {                            "Cabin": "1",                            "ContentT1": "1",                            "ContentT2": "1",                            "ContentT3": "1",                            "ContentB1": "1",                            "ContentB2": "1",                            "ContentB3": "undefined"                        }                    ]                },                {                    "TeShu": "",                    "BeginTime": "",                    "Remark": "",                    "TeamRefundRemark": "",                    "Phone": "",                    "CabinHeard": {                        "ContentT1": "",                        "ContentT2": "",                        "ContentT3": "",                        "ContentB1": "",                        "ContentB2": "",                        "ContentB3": "",                        "IsShow": "1"                    },                    "CabinList": [                        {                            "Cabin": "undefined",                            "ContentT1": "undefined",                            "ContentT2": "undefined",                            "ContentT3": "undefined",                            "ContentB1": "undefined",                            "ContentB2": "undefined",                            "ContentB3": "undefined"                        }                    ]                }            ]        },        {            "ModelName": "1",            "Table": [                {                    "TeShu": "",                    "BeginTime": "",                    "Remark": "",                    "TeamRefundRemark": "",                    "Phone": "",                    "CabinHeard": {                        "ContentT1": "",                        "ContentT2": "",                        "ContentT3": "",                        "ContentB1": "",                        "ContentB2": "",                        "ContentB3": "",                        "IsShow": "1"                    },                    "CabinList": [                        {                            "Cabin": "undefined",                            "ContentT1": "undefined",                            "ContentT2": "undefined",                            "ContentT3": "undefined",                            "ContentB1": "undefined",                            "ContentB2": "undefined",                            "ContentB3": "undefined"                        }                    ]                }            ]        }    ]}


C#

using Newtonsoft.Json.Linq;using Newtonsoft.Json;namespace ConsoleApplication11{    class Program    {        static void Main(string[] args)        {            string jsonStr = "{\"Model\":[{\"ModelName\":\"1\",\"Table\":[{\"TeShu\":\"1\",\"BeginTime\":\"2013-08-06\",\"Remark\":\"1\",\"TeamRefundRemark\":\"1\",\"Phone\":\"1\",\"CabinHeard\":{\"ContentT1\":\"1\",\"ContentT2\":\"1\",\"ContentT3\":\"1\",\"ContentB1\":\"2\",\"ContentB2\":\"3\",\"ContentB3\":\"\",\"IsShow\":\"1\"},\"CabinList\":[{\"Cabin\":\"1\",\"ContentT1\":\"1\",\"ContentT2\":\"1\",\"ContentT3\":\"1\",\"ContentB1\":\"1\",\"ContentB2\":\"1\",\"ContentB3\":\"undefined\"},{\"Cabin\":\"1\",\"ContentT1\":\"1\",\"ContentT2\":\"1\",\"ContentT3\":\"1\",\"ContentB1\":\"1\",\"ContentB2\":\"1\",\"ContentB3\":\"undefined\"}]},{\"TeShu\":\"\",\"BeginTime\":\"\",\"Remark\":\"\",\"TeamRefundRemark\":\"\",\"Phone\":\"\",\"CabinHeard\":{\"ContentT1\":\"\",\"ContentT2\":\"\",\"ContentT3\":\"\",\"ContentB1\":\"\",\"ContentB2\":\"\",\"ContentB3\":\"\",\"IsShow\":\"1\"},\"CabinList\":[{\"Cabin\":\"undefined\",\"ContentT1\":\"undefined\",\"ContentT2\":\"undefined\",\"ContentT3\":\"undefined\",\"ContentB1\":\"undefined\",\"ContentB2\":\"undefined\",\"ContentB3\":\"undefined\"}]}]},{ \"ModelName\":\"1\",\"Table\":[{\"TeShu\":\"\",\"BeginTime\":\"\",\"Remark\":\"\",\"TeamRefundRemark\":\"\",\"Phone\":\"\",\"CabinHeard\":{\"ContentT1\":\"\",\"ContentT2\":\"\",\"ContentT3\":\"\",\"ContentB1\":\"\",\"ContentB2\":\"\",\"ContentB3\":\"\",\"IsShow\":\"1\"},\"CabinList\":[{\"Cabin\":\"undefined\",\"ContentT1\":\"undefined\",\"ContentT2\":\"undefined\",\"ContentT3\":\"undefined\",\"ContentB1\":\"undefined\",\"ContentB2\":\"undefined\",\"ContentB3\":\"undefined\"}]}]}]}";            JObject jsonObj = (JObject)JsonConvert.DeserializeObject(jsonStr);            JArray modelArray = (JArray)jsonObj["Model"];            foreach (JObject modelObj in modelArray)            {                string modelName = modelObj["ModelName"].ToString();                JArray tableArray = (JArray)modelObj["Table"];                foreach (JObject tableObj in tableArray)                {                    string teshu = tableObj["TeShu"].ToString();                    string BeginTime = tableObj["BeginTime"].ToString();                    string Remark = tableObj["Remark"].ToString();                    string TeamRefundRemark = tableObj["TeamRefundRemark"].ToString();                    string Phone = tableObj["Phone"].ToString();                    JObject heardObj = (JObject)tableObj["CabinHeard"];                    string T1 = heardObj["ContentT1"].ToString();                    string T2 = heardObj["ContentT2"].ToString();                    string T3 = heardObj["ContentT3"].ToString();                    string B1 = heardObj["ContentB1"].ToString();                    string B2 = heardObj["ContentB2"].ToString();                    string B3 = heardObj["ContentB3"].ToString();                    JArray rowArray = (JArray)tableObj["CabinList"];                    foreach (JObject rowObj in rowArray)                    {                        string Cabin = rowObj["Cabin"].ToString();                    }                }            }        }    }}






原创粉丝点击