将arrayList反序列化为无效的JSON

时间:2019-05-28 15:20:15

标签: json.net

我正在使用NewtonSoft进行以下类的json序列化

class SampleTest
    {
        public ArrayList tmpList = new ArrayList(3) { new Sample12 { a=2, b=3},
            new Sample12 { a=45, b=5}, new Sample12 { a=2, b=3} };
    }

class Sample12
{
    public int a;
    public int b;
}

使用以下代码进行序列化和反序列化

var obj = new SampleTest();
string jsonString = Newtonsoft.Json.JsonConvert.SerializeObject(obj);
SampleTest deserializedobj = Newtonsoft.Json.JsonConvert.DeserializeObject<SampleTest>(jsonString);

下面是我得到的json。它是有效的JSON。

  

{“ tmpList”:[
        {
           “a2,            “ b”:3         },         {
           “ a”:45,            “ b”:5         },         {
           “a2,            “ b”:3         }]}

反序列化JSON时,我得到了6条记录,而不是3条记录。在这3个对象中,有一个有效对象,其余3个是无效的JSON(用大括号括起来的JSON)

enter image description here

下面是无效的JSON之一,

  

{{“ a”:2,“ b”:3}}

为什么在反序列化时将最后3条记录相加,如何去除这3条记录?有什么办法可以反序列化最后3条记录?

0 个答案:

没有答案