Mat*_*hel 3 java android json libgdx
我有一个json文件,内容如下:
{
players: [
{
name: "",
hp: 100
},
{
name: "",
hp: 120
}
],
weapons: [
{
name: "Desert Eagle",
price: 100
},
{
name: "AK-47",
price: 150
}
]
}
Run Code Online (Sandbox Code Playgroud)
如何将其解析为一系列武器?我已经将此文件的内容作为String获取.然后我使用libgdx JsonReader:
JsonValue json = new JsonReader().parse(text);
Run Code Online (Sandbox Code Playgroud)
我还有一个武器课:
class Weapon {
private String name;
private int price;
}
Run Code Online (Sandbox Code Playgroud)
接下来我应该怎么做才能将所有武器放入阵列?
在libGDX中没有自动映射解析的Json到Java对象,因此您必须自己遍历Json并创建适当的对象.对于您解析的样本weapons:
JsonValue json = new JsonReader().parse(text);
Array<Weapon> weapons = new Array<Weapon>();
JsonValue weaponsJson = json.get("weapons");
for (JsonValue weaponJson : weaponsJson.iterator()) // iterator() returns a list of children
{
Weapon newWeapon = new Weapon();
newWeapon.name = weaponJson.getString("name");
newWeapon.price = weaponJson.getInt("price");
weapons.add(newWeapon);
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3503 次 |
| 最近记录: |