【问题标题】:Retrieve String from JSON in Android using JSONArray使用 JSONArray 从 Android 中的 JSON 中检索字符串
【发布时间】:2014-01-11 09:20:37
【问题描述】:

这是我的 json 代码:{"teams" : ["Real Madrid", "Bayern Munich"]}

现在我想解析 android 中“团队”的值。

我试过用这种方式解析它,但没有成功:

JSONObject jsonObject = new JSONObject(result);
JSONArray jsonArray = jsonObject.getJSONArray("teams");
String team1 = jsonArray.getJSONObject(0).toString();
String team2 = jsonArray.getJSONObject(1).toString();

请告诉我如何让它工作。

【问题讨论】:

  • 您面临的问题是什么?你是不是搞错了?
  • 什么是 queryArray?我没有看到正在使用的变量 jsonArray
  • 不,我没有得到错误,但我也没有得到值。

标签: android json parsing http


【解决方案1】:

假设你使用的是 org.json 包,你应该试试

   JSONObject jsonObject = new JSONObject(result);
   JSONArray jsonArray = jsonObject.getJSONArray("teams");
   String team1 = jsonArray.getString(0);
   String team2 = jsonArray.getString(1);

【讨论】:

    【解决方案2】:
    JSONObject jsonObject = new JSONObject(result);
    JSONArray jsonArray = jsonObject.getJSONArray("teams");
    
    String team1 = jsonArray.optString(0);
    String team2 = jsonArray.optString(1);
    

    【讨论】:

      【解决方案3】:

      我认为问题在于您获得的 JSON 的结构。因为有数组但没有对象。对象在花括号{}内。因此,通过指定索引位置,您无法检索该值。您可能需要更新 JSON 格式。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2021-08-16
        相关资源
        最近更新 更多