我如何解析json数组与newtonsoft

本文关键字:newtonsoft 数组 json 何解析 | 更新日期: 2023-09-27 18:17:16

我有这个json字符串:

[ 
   {f_id:100,r_id:200,count:2,c_id=111},
   {f_id:120,r_id:200,count:1,c_id=111 }
]


我想用newtonsoft.json解析json字符串。
我该怎么做呢?

我写这个代码:

private void button1_Click(object sender, EventArgs e)
    {
        string json = @"[ 
{f_id:100,r_id:200,count:2,c_id=111},
{f_id:120,r_id:200,count:1,c_id=111 }
]";
        List<myClass> tmp = JsonConvert.DeserializeObject<List<myClass>>(json);
        int firstFId = tmp[0].f_id;
        label1.Text = firstFId.ToString();
        label2.Text = tmp[1].f_id.ToString();

    }
    public class myClass
    {
        public int f_id { get; set; }
        public int r_id { get; set; }
        public int count { get; set; }
        public int c_id { get; set; }

    }


但是有这样的错误:

An unhandled exception of type 'Newtonsoft.Json.JsonReaderException' occurred in    Newtonsoft.Json.dll
Additional information: Invalid JavaScript property identifier character: =. Path '[0].count', line 2, position 32.

我如何解析json数组与newtonsoft

创建一个代表数据的类。

public class MyClass {
   public int f_id { get; set; }
   public int r_id { get; set; }
   public int count { get; set; }
   public int c_id { get; set; }
}

将json字符串反序列化为MyClass列表。

List<MyClass> tmp = JsonConvert
    .DeserializeObject<List<MyClass>>(@"
                                        [
                                            {
                                            f_id: 100,
                                            r_id: 200,
                                            count: 2,
                                            c_id:111
                                            },
                                            {
                                            f_id: 120,
                                            r_id: 200,
                                            count: 1,
                                            c_id:111
                                            }
                                        ]
                                        ");

使用索引

访问数据
int firstFId = tmp[0].f_id;

更新

问题中的json字符串无效。

c_id=111 

应为

c_id:111