在 JSON.NET 中反序列化 Jarray



我需要反序列化它。

{"previous_cursor_str":"0","next_cursor":0,"ids":[741999686,240455509,126524150,143548100,124328422,624776268,393738125,587829914,280834485,64818350,282713007,90425850,759794,164401208,114771958,114364910,89725893],"previous_cursor":0,"next_cursor_str":"0"}    

知道吗?

它是一个 JObject 里面有一个 Id 数组。

首先,您可以创建一个类来表示 json,如下所示:

public class RootObject
{
    public string previous_cursor_str { get; set; }
    public int next_cursor { get; set; }
    public List<int> ids { get; set; }
    public int previous_cursor { get; set; }
    public string next_cursor_str { get; set; }
}

然后,要将 json 反序列化为对象,请执行以下操作:

var myJsonObject = JsonConvert.DeserializeObject<RootObject>(jsonString);

或者,如果您只想将 id 放在数组中:

var obj = JObject.Parse(jsonstring);
var idArray = obj["ids"].Children().Select(s=>s.value<string>());

刚刚尝试了 https://jsonclassgenerator.codeplex.com/并得到了下面的代码。这和吉皮的类一样。 不错的工具。

using System;
using System.Collections.Generic;
using Newtonsoft.Json;
using Newtonsoft.Json.Linq;
namespace Example
{
  class Result
  {
    [JsonProperty("previous_cursor_str")]
    public string PreviousCursorStr { get; set; }
    [JsonProperty("next_cursor")]
    public int NextCursor { get; set; }
    [JsonProperty("ids")]
    public IList<int> Ids { get; set; }
    [JsonProperty("previous_cursor")]
    public int PreviousCursor { get; set; }
    [JsonProperty("next_cursor_str")]
    public string NextCursorStr { get; set; }
  }    
  public static unsafe void Main()
  {
    Result result = JsonConvert.DeserializeObject<Result> (" ... your string ...");
    Console.WriteLine(result);
  }
}

相关内容

  • 没有找到相关文章

最新更新