gpt4 book ai didi

java - "No value for"getJSONArray 异常

转载 作者:行者123 更新时间:2023-12-01 11:20:23 24 4
gpt4 key购买 nike

我有一个像这样的 JSON 对象:

{
"Successful": true,
"Value": {
"Materials":[{
"MaterialID": 37628,
"MaterialID": 0,
"MaterialNo": 26868,
"Type": 0,
"MaterialName": Copper
}],
"Prices": []
}
}

我正在尝试获取这样的 Material 数组:

    public ArrayList<Material> parseMaterial (JSONObject object)
{
try
{
JSONArray materialArray = object.getJSONArray("Materials");
}
catch (JSONException e)
{
Log.d("JSONParser=>parseMaterial", e.getMessage());
}
}

我得到这个异常:

JSONParser=>parseMaterial﹕ No value for Materials

你能告诉我代码有什么问题吗?谢谢。

最佳答案

您缺少一个步骤:更改

JSONArray materialArray = object.getJSONArray("Materials");

JSONObject value = object.getJSONObject("Value");
JSONArray materialArray = value.getJSONArray("Materials");

getJSONArray 不会“搜索”整个对象(如果对象中有多个 Material ,这可能会产生不可预测的结果),只会搜索第一级。

关于java - "No value for"getJSONArray 异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31312093/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com