簡體   English   中英

從JSON低谷VB6獲取特定字段

[英]Get specific field from JSON trough VB6

我最近下載了VB-JSON ,VB6 JSON解析器類庫,我正嘗試從JSON數據結構中獲取特定字段,但是沒有運氣,我在這里做錯了什么?

我正在使用這樣的代碼:

Dim p As Object
Set p = JSON.parse(strFormattedJSON)

Debug.Print p.Item("wins_ratio").Item("value")

這是JSON數據(我可以讀取“狀態”和“計數”,但無法從中獲取“ wins_ratio”值。):

{
    "status": "ok",
    "count": 1,
    "data": {
        "507785480": {
            "survived_ratio": {
                "rank_delta": -10,
                "value": 48.23,
                "rank": 1202
            },
            "capture_points": {
                "rank_delta": null,
                "value": null,
                "rank": null
            },
            "wins_ratio": {
                "rank_delta": -31,
                "value": 55.37,
                "rank": 34239
            },
            "account_id": 507785480,
            "frags_avg": {
                "rank_delta": null,
                "value": null,
                "rank": null
            },
            "frags_count": {
                "rank_delta": 505,
                "value": 12790,
                "rank": 105081
            },
            "xp_amount": {
                "rank_delta": null,
                "value": null,
                "rank": null
            },
            "hits_ratio": {
                "rank_delta": 444,
                "value": 62.09,
                "rank": 325157
            },
            "spotted_avg": {
                "rank_delta": null,
                "value": null,
                "rank": null
            },
            "xp_avg": {
                "rank_delta": 949,
                "value": 463.52,
                "rank": 240448
            },
            "damage_dealt": {
                "rank_delta": 526,
                "value": 5968315,
                "rank": 279134
            },
            "spotted_count": {
                "rank_delta": null,
                "value": null,
                "rank": null
            },
            "xp_max": {
                "rank_delta": -165,
                "value": 2422,
                "rank": 145254
            },
            "damage_avg": {
                "rank_delta": null,
                "value": null,
                "rank": null
            },
            "battles_to_play": 0,
            "battles_count": {
                "rank_delta": 1159,
                "value": 9778,
                "rank": 241038
            },
            "global_rating": {
                "rank_delta": -125,
                "value": 6772,
                "rank": 72401
            }
        }
    }
}

試試這個代碼

Debug.Print p.Item("data").Item("507785480").Item("wins_ratio").Item("value")

請注意,您必須知道玩家ID。 如果查詢需要,似乎可以返回多個玩家ID和狀態。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM