0

valueプロパティ名とが重複しているため、このJSONデータの逆シリアル化に問題がありvalue_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により、1つのオブジェクト内のすべての属性名は一意である必要があります。それに取り組む唯一の合理的な方法-この文字列が由来するコードの部分を書き直してください。

于 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"

上記のようにvalueとを変更しますvalue_raw

于 2020-01-17T08:54:42.197 に答える