解析Json文件-JsonConvert

问题描述 投票:0回答:1

我有JSON文件,如:

[
  12,
  [
    {
      "id": "131",
      "name": "Cate"
    },
        {
      "id": "132",
      "name": "Mike"
    }
  ],
  "Result OK"
]

和代码:

        private static void Main(string[] args)
        {
                using (var r = new StreamReader(@"C:\Path\data1.json"))
                {
                    var json = r.ReadToEnd();
                    try
                    {
                        var items = JsonConvert.DeserializeObject<JsonBody>(json);
                        Console.WriteLine(items);
                    }
                    catch (JsonSerializationException ex)
                    {
                        Console.WriteLine(ex);
                    }
                }
        }
        public class JsonBody
        {
            public int someint;
            public List<Dictionary<string, Item>> item;
            public string somestring;

        }
        public class Item
        {
            [JsonProperty("id")] public string id;
            [JsonProperty("name")] public string name;
        }

错误:无法将当前JSON数组(例如[1,2,3])反序列化为类型'Json_parser.Parse2 + JsonBody',因为该类型需要JSON对象(例如{“ name”:“ value”})正确反序列化。

应重写代码中的内容以避免此错误。如何正确解析此JSON?我需要从Item类中获取所有项目。

c# json-deserialization jsonconvert
1个回答
0
投票

普通JSON格式为{“ item1”:“ value1”,

}

© www.soinside.com 2019 - 2024. All rights reserved.