zoukankan      html  css  js  c++  java
  • Newtonsoft.Json.4.5.0 序列化与反序列化json字符串使用方法总结

    在VS里下载安装:

    Json.NET 5.0.6

    http://www.nuget.org/packages/Newtonsoft.Json/5.0.6

    反序列化json字符串为List:

    json字符串如下:

     1 {"docs": [{
     2             "uid": 2629577,
     3             "nickname": "枕边疯电台",
     4             "is_v": "true",
     5             "category_id": 4,
     6             "cover_path": "http://fdfs.xmcdn.com/group3/M01/64/3B/wKgDslJ6DkyQb4EXAAEXoFUKDKE711_mobile_small.jpg",
     7             "intro": "业余主持,纯属兴趣,更新不定时,长短没限制,自嘲只为传播欢乐,不要结合现实对号入座。喜欢请多给我一点鼓励,如果不喜欢也希望得到中肯的建议。如果实在不和您的胃口,请移步到八丈以外的瑶池仙境,这里是人间,不适合您……实在要喷,请注意下自己的素质和言行,只是善意提醒,损人是一件灰常折寿的事情。     ",
     8             "user_source": "1",
     9             "id": 203355,
    10             "title": "段子来了",
    11             "updated_at": 1399973243000,
    12             "created_at": 1376650745000,
    13             "avatar_path": "http://fdfs.xmcdn.com/group3/M00/15/65/wKgDslIN_pjwNb5UAACBgMAPyaM325_mobile_small.jpg",
    14             "tracks": 131
    15         },
    16         {
    17             "uid": 2629294,
    18             "nickname": "采采",
    19             "is_v": "true",
    20             "category_id": 4,
    21             "cover_path": "http://fdfs.xmcdn.com/group3/M04/64/9D/wKgDsVJ6DnSy_6Q7AAEXoFUKDKE679_mobile_small.jpg",
    22             "intro": "",
    23             "user_source": "1",
    24             "id": 214706,
    25             "title": "段子来了 采采",
    26             "updated_at": 1400250058000,
    27             "created_at": 1382348506000,
    28             "avatar_path": "http://tp3.sinaimg.cn/1263078850/180/5623249090/0",
    29             "tracks": 127
    30         },
    31         {
    32             "uid": 4498275,
    33             "nickname": "心的节拍",
    34             "is_v": "true",
    35             "category_id": 2,
    36             "cover_path": "http://fdfs.xmcdn.com/group3/M04/9A/49/wKgDsVKvMk7hRm8KAAEJx49MS9s693_mobile_small.jpg",
    37             "intro": "喜马拉雅 枕边疯电台、段子来了--背景音乐 【 不 断 更 新 。 多 谢 关 注、采迷们、、】    喜欢就点个赞 转个采 评个论 你们的支持~ 是我的动力! 谢谢  ",
    38             "user_source": "2",
    39             "id": 223871,
    40             "title": "【段子来了-背景音乐】-全集",
    41             "updated_at": 1400343573000,
    42             "created_at": 1385138688000,
    43             "avatar_path": "http://fdfs.xmcdn.com/group3/M00/7A/C2/wKgDslKPYpjxneH5AAAdDa0wExk487_mobile_small.gif",
    44             "tracks": 35
    45         },
    46         {
    47             "category_id": 4,
    48             "intro": "江湖盛事,凰泉带着段子来了,小伙伴们,快点开听吧~~~~ ",
    49             "cover_path": "http://fdfs.xmcdn.com/group3/M00/82/75/wKgDslKYCe3CEs0KAAHJisvwlLA043_mobile_small.jpg",
    50             "user_source": "1",
    51             "id": 217022,
    52             "title": "江湖盛事《 凰泉来了,段子来了!! 》",
    53             "updated_at": 1387614900000,
    54             "created_at": 1383301247000,
    55             "uid": 3963423,
    56             "is_v": "true",
    57             "nickname": "烟雨凰阳丶有声电台",
    58             "avatar_path": "http://fdfs.xmcdn.com/group5/M00/0B/58/wKgDtlN0Ds2QM4ubAARIhX4zPC0599_mobile_small.jpg",
    59             "tracks": 31
    60         },
    61         {
    62             "uid": 6360654,
    63             "is_v": "true",
    64             "id": 253901,
    65             "title": "段子“又”来了",
    66             "created_at": 1399210519000,
    67             "avatar_path": "http://fdfs.xmcdn.com/group3/M0A/4D/0C/wKgDslNH47zjf0AsAACSWLi3c04438_mobile_small.jpg",
    68             "nickname": "小宇说大话",
    69             "category_id": 4,
    70             "intro": "段子又来了是以简短的形式出现的!但每个段子都是爆笑的!喜欢的点个赞,不喜欢的也勿喷!想关注小宇的朋友们,可以在腾讯微博里搜索小宇傻笑!!!也可以在新浪微博里搜索做人之道!!!谢谢朋友们对小宇的支持!!!小宇说大话的微信公众平台号AA686,在微信搜索公众号AA686就可以找到我们的节目了!!!想与主播小宇零距离互动吗?就去微信搜索关注吧!",
    71             "cover_path": "http://fdfs.xmcdn.com/group4/M02/55/2F/wKgDtFNmQdTRtaZDAAECKaQdb8s505_mobile_small.jpg",
    72             "user_source": "1",
    73             "updated_at": 1399210515000,
    74             "tracks": 12
    75         }]
    76     }
    View Code 

    C#代码:

    AlbumInfo

     1 public class AlbumInfo
     2     {
     3        public AlbumInfo() { }
     4         public int category_id { get; set; }
     5         public string cover_path { get; set; }
     6         public string intro { get; set; }
     7         public string user_source { get; set; }
     8         public int id { get; set; }
     9         public string title { get; set; }
    10         public object updated_at { get; set; }
    11         public object created_at { get; set; }
    12         public int uid { get; set; }
    13         public string is_v { get; set; }
    14         public string nickname { get; set; }
    15         public string avatar_path { get; set; }
    16         public int tracks { get; set; }
    17 
    18     }
    View Code

     方式一:

     1 string contents = " {'docs': [{
     2             'uid': 2629577,
     3             'nickname': '枕边疯电台',
     4             'is_v': 'true',
     5             'category_id': 4,
     6             'cover_path': 'http://fdfs.xmcdn.com/group3/M01/64/3B/wKgDslJ6DkyQb4EXAAEXoFUKDKE711_mobile_small.jpg',
     7             'intro': '业余主持,纯属兴趣,更新不定时,长短没限制,自嘲只为传播欢乐,不要结合现实对号入座。喜欢请多给我一点鼓励,如果不喜欢也希望得到中肯的建议。如果实在不和您的胃口,请移步到八丈以外的瑶池仙境,这里是人间,不适合您……实在要喷,请注意下自己的素质和言行,只是善意提醒,损人是一件灰常折寿的事情。     ',
     8             'user_source': '1',
     9             'id': 203355,
    10             'title': '段子来了',
    11             'updated_at': 1399973243000,
    12             'created_at': 1376650745000,
    13             'avatar_path': 'http://fdfs.xmcdn.com/group3/M00/15/65/wKgDslIN_pjwNb5UAACBgMAPyaM325_mobile_small.jpg',
    14             'tracks': 131
    15         },
    16         {
    17             'uid': 2629294,
    18             'nickname': '采采',
    19             'is_v': 'true',
    20             'category_id': 4,
    21             'cover_path': 'http://fdfs.xmcdn.com/group3/M04/64/9D/wKgDsVJ6DnSy_6Q7AAEXoFUKDKE679_mobile_small.jpg',
    22             'intro': '',
    23             'user_source': '1',
    24             'id': 214706,
    25             'title': '段子来了 采采',
    26             'updated_at': 1400250058000,
    27             'created_at': 1382348506000,
    28             'avatar_path': 'http://tp3.sinaimg.cn/1263078850/180/5623249090/0',
    29             'tracks': 127
    30         },
    31         {
    32             'uid': 4498275,
    33             'nickname': '心的节拍',
    34             'is_v': 'true',
    35             'category_id': 2,
    36             'cover_path': 'http://fdfs.xmcdn.com/group3/M04/9A/49/wKgDsVKvMk7hRm8KAAEJx49MS9s693_mobile_small.jpg',
    37             'intro': '喜马拉雅 枕边疯电台、段子来了--背景音乐 【 不 断 更 新 。 多 谢 关 注、采迷们、、】    喜欢就点个赞 转个采 评个论 你们的支持~ 是我的动力! 谢谢  ',
    38             'user_source': '2',
    39             'id': 223871,
    40             'title': '【段子来了-背景音乐】-全集',
    41             'updated_at': 1400343573000,
    42             'created_at': 1385138688000,
    43             'avatar_path': 'http://fdfs.xmcdn.com/group3/M00/7A/C2/wKgDslKPYpjxneH5AAAdDa0wExk487_mobile_small.gif',
    44             'tracks': 35
    45         },
    46         {
    47             'category_id': 4,
    48             'intro': '江湖盛事,凰泉带着段子来了,小伙伴们,快点开听吧~~~~ ',
    49             'cover_path': 'http://fdfs.xmcdn.com/group3/M00/82/75/wKgDslKYCe3CEs0KAAHJisvwlLA043_mobile_small.jpg',
    50             'user_source': '1',
    51             'id': 217022,
    52             'title': '江湖盛事《 凰泉来了,段子来了!! 》',
    53             'updated_at': 1387614900000,
    54             'created_at': 1383301247000,
    55             'uid': 3963423,
    56             'is_v': 'true',
    57             'nickname': '烟雨凰阳丶有声电台',
    58             'avatar_path': 'http://fdfs.xmcdn.com/group5/M00/0B/58/wKgDtlN0Ds2QM4ubAARIhX4zPC0599_mobile_small.jpg',
    59             'tracks': 31
    60         },
    61         {
    62             'uid': 6360654,
    63             'is_v': 'true',
    64             'id': 253901,
    65             'title': '段子“又”来了',
    66             'created_at': 1399210519000,
    67             'avatar_path': 'http://fdfs.xmcdn.com/group3/M0A/4D/0C/wKgDslNH47zjf0AsAACSWLi3c04438_mobile_small.jpg',
    68             'nickname': '小宇说大话',
    69             'category_id': 4,
    70             'intro': '段子又来了是以简短的形式出现的!但每个段子都是爆笑的!喜欢的点个赞,不喜欢的也勿喷!想关注小宇的朋友们,可以在腾讯微博里搜索小宇傻笑!!!也可以在新浪微博里搜索做人之道!!!谢谢朋友们对小宇的支持!!!小宇说大话的微信公众平台号AA686,在微信搜索公众号AA686就可以找到我们的节目了!!!想与主播小宇零距离互动吗?就去微信搜索关注吧!',
    71             'cover_path': 'http://fdfs.xmcdn.com/group4/M02/55/2F/wKgDtFNmQdTRtaZDAAECKaQdb8s505_mobile_small.jpg',
    72             'user_source': '1',
    73             'updated_at': 1399210515000,
    74             'tracks': 12
    75         }]
    76     }";
    77 JObject resutlJobj = JObject.Parse(contents);
    78 // serialize JSON results into .NET objects
    79 IList < AlbumInfo > searchResults = JsonConvert.DeserializeObject < List < AlbumInfo >> (resutlJobj["docs"].ToString());
    View Code

     方式二:

     1 JObject resutlJobj = JObject.Parse(contents);
     2 // get JSON result objects into a list
     3 IList < JToken > results = resutlJobj["docs"].Children().ToList();
     4 
     5 // serialize JSON results into .NET objects
     6 IList < AlbumInfo > searchResults = new List < AlbumInfo > ();
     7 //new List<AlbumInfo>();
     8 foreach(JToken result in results) {
     9 AlbumInfo searchResult = JsonConvert.DeserializeObject < AlbumInfo > (result.ToString());
    10 searchResults.Add(searchResult);
    11 }
    View Code

    序列化对象为json字符串:

    string json = JsonConvert.SerializeObject(searchResults);
  • 相关阅读:
    线性结构(二)--- 双链表
    线性结构(二)----单链表
    线性结构(二)---队列
    线性结构(二)--- 栈
    谁才是真正的资深开发者?
    在Tiled Map中使用碰撞检测
    Android横屏竖屏切换的问题
    android activity横竖屏切换,Activity重新创建问题解决!
    2D中如何判断一点在另一个点的那个方位
    浅析android应用增量升级
  • 原文地址:https://www.cnblogs.com/lulee007/p/3738279.html
Copyright © 2011-2022 走看看