• Newtonsoft 获取动态key的json数据


    在反序列化一些json数据的过程中,有些数据根本没有办法反序列化,因为json数据的key值是动态的,另外还有一些key值是数字的,也没有办法反序列化到c# 类。

    反序列化是没希望,但总可以读出来吧,寒, 要不然就要换掉Newtonsoft了。

    举例:


     

    代码
                string str = "{\"3\":123,body:456,list:{title:'abc',body:'what'}}";
                JObject o 
    = JObject.Parse(str);
                IEnumerable
    <JProperty> properties = o.Properties();
                
    foreach (JProperty item in properties)
                {
                    Console.WriteLine(item.Name 
    + ":" + item.Value);
                }

     如果str 是个数组,则可以相应用JArray a = JArray.Parse(str); 来处理,不过目前还不知道无限包含子集怎么处理。

    比如 

    string str = "{\"3\":123,body:456,list:{title:'abc',body:{a:{a:{a:{a:{a:'......'}}}}}}}"; 

    网上资料甚少,官方那个Quick Starts看了晕,除了一大堆的声明,未见实质的sample,要看声明,难道要看它的这个帮助文档?右键--转到定义,不就可以了吗? 

      

  • 相关阅读:
    RPC的入门
    Https的实现原理
    Celery
    Flask信号
    Redis安装
    python之递归
    python之三元表达式和生成式
    python第十八天作业
    python之生成器
    python之迭代器
  • 原文地址:https://www.cnblogs.com/szyicol/p/1662686.html
Copyright © 2020-2023  润新知