• 反序列化网易miniblog json格式数据 原创 create by lee


         我写这篇文章是在于自己热于发现一些解决问题的新方式,通常我在分析json格式的数据,喜欢用正则,但往往不够理想 可能正则水平也不到位吧。呵呵。

     首先拿到数据源

    代码
    public  class ooojj
        {

            
    public userObj user { getset; } //对象
            public string is_retweet { getset; }
            
    public string retweet_count { getset; }
            
    public string retweet_followed_count { getset; }
            
    public string favorited { getset; }
            
    public Tl timeline { getset; } //对象
            public string rootReplyCount { getset; }
            
    public string rootReplyUserName { getset; }
            
    public string rootReplyText { getset; }
            
    public string rootReplyTruncated { getset; }
            
    public string rootReplySource { getset; }
            
    public string rootReplyCreatedAt { getset; }
            
    public string rootReplyRetweetCount { getset; }
            
    public string rootReplyUserScreenName { getset; }
            
    public RootActive rootActivityIcon { getset; } //对象
            public string id { getset; }
            
    public string source { getset; }
            
    public string created_at { getset; }
            
    public string text { getset; }
            
    public string truncated { getset; }
            
    public string rootReplyId { getset; }


        


        }
      public class RootActive
        {
            
    public string isLantern1 { getset; }
            
    public string isLantern2 { getset; }
            
    public string isLantern3 { getset; }

        }
     public class Tl
        {
            
    public string  Name {get;set;}
            
    public string time{get;set;}
        }
    代码
     public class userObj
        {
            
    public string name{get;set;}
            
    public string id{get;set;}
            
    public string profile_image_url{get;set;}
            
    public string screen_name{get;set;}
            
    public string profile_image_url_large{get;set;}
            
    public string profile_image_url_small{get;set;}
         
    //   public string name{get;set;}

        }

    这个四个实体是用来装载他这个网易json格式的实体。 建议用http analyze工具分析它的格式,原理先分析它的json基础结构,构成装载模型,然后反序列化装载。

    代码
    /// <summary>
            
    /// 将 JSON 转换为对象
            
    /// </summary>
            
    /// <typeparam name="T"></typeparam>
            
    /// <param name="s"></param>
            
    /// <returns></returns>
            public static T FromJson<T>(this string s)
            {
                var serializer 
    = new JavaScriptSerializer();
                
    return serializer.Deserialize<T>(s);
            }

    最后调用你所代码,实现你的结果

      string content = FileHelper.ReadFile(@"\TextFile1.txt");
               List<ooojj> list=  JsonUtility.FromJson<List<ooojj>>(content);

  • 相关阅读:
    关于python中的随机种子——random_state
    python的随机森林模型调参
    用graphviz可视化决策树
    莫烦python教程学习笔记——保存模型、加载模型的两种方法
    莫烦python教程学习笔记——validation_curve用于调参
    莫烦python教程学习笔记——learn_curve曲线用于过拟合问题
    莫烦python教程学习笔记——利用交叉验证计算模型得分、选择模型参数
    莫烦python教程学习笔记——数据预处理之normalization
    windows 和rhel,centos双系统安装
    linux下增加swap分区
  • 原文地址:https://www.cnblogs.com/chenli0513/p/1869229.html
Copyright © 2020-2023  润新知