【问题标题】:Receiving multiple JSON objects(arrays) in java(Eclipse)在java(Eclipse)中接收多个JSON对象(数组)
【发布时间】:2023-03-19 23:27:01
【问题描述】:

我尝试从 php 获取这个 json 编码输出

$response["success"] = $id;
echo json_encode($response);
echo json_encode($eventid);

而 $response 仅在 ["success] 处包含一个整数,而 $eventid 包含一个 id 数组(例如 ["1","3"])。 所以php文件输出例如是这样的:

{"success":"3"}["1","3","7"]

现在我尝试同时获得成功和 eventid。我成功了

int id = json.getInt("success");

它有效,问题是获取 eventids 数组。 我找到了这篇文章:stackoverflow,但这对我没有帮助,因为我没有为数组中的每个元素添加标签。 所以问题是我是否必须为每个元素添加标签,还是可以使用另一种语法?

提前致谢

【问题讨论】:

  • 加标签会更好

标签: java php android json eclipse


【解决方案1】:

提供的 JSON 无效。您需要将其修改为如下所示:

{
    "success": "3",
    "elements": [
        "1",
        "3",
        "7"
    ]
}

如果你这样做,你将能够做到这一点:

JSONArray array = json.getJSONArray ("elements");
for (int counter = 0; counter < array.length (); counter ++)
   Log.d ("element", array.getInt (counter));

【讨论】:

  • 很高兴为您提供帮助。如果它完全解决了您的问题,您可以将其标记为选定的答案。
【解决方案2】:

我会将$eventid 编码在$response 中,就像您对$success 所做的那样

$response["success"] = $id;
$response["eventid"] = $eventid;
echo json_encode($response);

产量:

{"success":3,"eventid":[ 1, 3, 7]}

【讨论】:

  • 该死的,不能给两个人解决可以吗?如果我的答案不是最佳答案,那么点个赞怎么样。
  • 是的,这绝对是我的具体问题的可能答案,但阴影更普遍,我肯定赞成你的(:
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-09-05
  • 2018-10-15
  • 2020-07-05
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多