json.net 对json格式进行处理

来源:互联网 发布:php 对象类型转换 编辑:程序博客网 时间:2024/04/29 03:03




             //刚没注意看你是反序列化
             StringBuilder sb = new StringBuilder();
             string str = "[{ID:'1',Name:'zhangsan',Other:[{Age:'111'}]}]";
             JArray javascript = (JArray)JsonConvert.DeserializeObject(str);
             if (javascript.Count > 0)
             {
                 JObject obj = (JObject)javascript[0];
                 sb.Append("ID:" + obj["ID"].ToString() + "<br/>");
                 sb.Append("Name:" + obj["Name"].ToString() + "<br/>");
                 JArray json = (JArray)obj["Other"];
                 if (json.Count > 0)
                 {
                     JObject jsonobj = (JObject)json[0];
                     sb.Append("Age:" + jsonobj["Age"].ToString());
                 }
             }

             TestLog.WriteLine("ddd={0}", sb.ToString());





通过转换为XML格式, 对JSON进行处理



  /// <summary>
        /// 对接口返回的JSON格式进行处理
        /// </summary>
        public Boolean JSON_Message(String JSON_Message, String NodeCheck)
        {
            Boolean Json_Result = true;
            if (JSON_Message.Length > 1)
            {
                //将返回的JSON字符串转换成XML格式
                XmlDictionaryReader reader = JsonReaderWriterFactory.CreateJsonReader(Encoding.UTF8.GetBytes(JSON_Message), XmlDictionaryReaderQuotas.Max);
                XmlDocument doc = new XmlDocument();
                // 返回结果读取到DOM中
                doc.Load(reader);

                //在xml格式中, 通过xpath查找是否存在Result为0的值。(0代表成功, 非0代表失败)
                XmlNode bookNode = doc.SelectSingleNode(NodeCheck);

                //Determine whether a matching node is located.
                if (bookNode != null)
                {
                    TestLog.WriteLine("查找的节点和值存在。 成功");

                }
                else
                {
                    TestLog.WriteLine("不存在 查找的节点和值。 失败");
                    Json_Result = false;

                }
            }
            else
            {
                TestLog.WriteLine("接口返回为NULL。 失败");
                Json_Result = false;
            }
            return Json_Result;
        }