0

したがって、メイン オブジェクト内に配列をロードする JSON ファイルがあるので、次のようにロードします。

try {
    schemaData = (JSONObject) parser.parse(new FileReader(schema));
    schemaItemDataArray = (JSONArray) schemaData.get("items");
} catch (IOException | ParseException e) {
    e.printStackTrace();
}

ロードする「items」という配列

schemaItemDataArray = (JSONArray) schemaData.get("items");

大量の名前のないオブジェクトが含まれており、それらはすべて次の構造を持っています:

            {
                "name": "TF_WEAPON_BAT",
                "defindex": 0,
                "item_class": "tf_weapon_bat",
                "item_type_name": "Bat",
                "item_name": "Bat",
                "proper_name": false,
                "item_slot": "melee",
                "model_player": "models\/weapons\/w_models\/w_bat.mdl",
                "item_quality": 0,
                "image_inventory": "backpack\/weapons\/c_models\/c_bat",
                "min_ilevel": 1,
                "max_ilevel": 1,
                "image_url": "http:\/\/media.steampowered.com\/apps\/440\/icons\/c_bat.d037d6a40ec30ab4aa009387d476dca889b6f7dc.png",
                "image_url_large": "http:\/\/media.steampowered.com\/apps\/440\/icons\/c_bat_large.0ac4b6f335f671bd6b5e6ae02f47985af2da8c48.png",
                "craft_class": "weapon",
                "craft_material_type": "weapon",
                "capabilities": {
                    "nameable": true,
                    "can_craft_mark": true,
                    "can_be_restored": true,
                    "strange_parts": true,
                    "can_card_upgrade": true,
                    "can_strangify": true,
                    "can_consume": true
                },
                "used_by_classes": [
                    "Scout"
                ]

            }

私ができるようにしたいのは、名前の値をフィルタリングして選択したオブジェクトを含む JSONObject を取得することです。たとえば、「name」キーが「TF_WEAPON_BAT」に設定されているすべてのオブジェクトを取得し、それを foundItem という JSONObject に格納したいと考えています。

前もってありがとう、デントン。

4

1 に答える 1