0

由于重复的属性名称valuevalue_raw.

我试图使用基于列表的对象来反序列化这些值,但这只会导致最后一个值存储在对象中。除此之外,对象正确解析。

JSON字符串:

{
    "prtg-version":"9.2.0.2236",
    "treesize":576,
    "values":
        [{
            "datetime":"29/09/2012 09:45:00 - 09:50:00",
            "datetime_raw":41181.3680555556,
            "value":"49 %",
            "value_raw":48.5000,
            "value":"0 %",
            "value_raw":0.0000,
            "coverage":"100 %",
            "coverage_raw":"0000010000"
        }]
}  

请注意 - JSON 字符串是我从 PRTG 得到的,所以不幸的是我必须以这种格式使用它:(

4

3 回答 3

1

您不能反序列化,因为您提供的字符串不是有效的 JSON。根据 RFC,一个对象内的所有属性名称都应该是唯一的。解决这个问题的唯一合理方法 - 重写该字符串来自的代码部分。

于 2012-10-01T09:50:06.993 回答
0

你能先序列化

            "datetime":"29/09/2012 09:45:00 - 09:50:00",
            "datetime_raw":41181.3680555556,
            "value":"49 %",
            "value_raw":48.5000,
            "value":"0 %",
            "value_raw":0.0000,
            "coverage":"100 %",
            "coverage_raw":"0000010000"

变成一个字符串列表,然后再做进一步的处理?

于 2012-10-01T10:11:10.943 回答
-1
"datetime"    :"29/09/2012 09:45:00 - 09:50:00",
"datetime_raw":41181.3680555556,
"value"       :["49 %","0 %"]
"value_raw"   :[48.5000,0.0000]            
"coverage"    :"100 %",
"coverage_raw":"0000010000"

更改valuevalue_raw如上所示

于 2020-01-17T08:54:42.197 回答