java - 将 json 字符串转换为 json 数组 - android java

标签 java php android json

首先,我在这个网站上阅读了大量类似的问题,但没有一个能解决我的问题,所以
我有一个使用 php 创建的 json 文件:

{
"done":true,
"data":"[
{\"id\":\"5099\",\"user_id\":\"892\"},
{\"id\":\"5100\",\"user_id\":\"892\"}
....
]"}

现在在java android中我想解析它,但它给了我这个错误:JSON.TypeMismatch
这是我解析 json 文件的 android 代码:

//class from which I get the json in a JSONObject - works fine so far
JSONObject httpResult = itemHttpRequest.get("/fetch?currentList=&sort=recent&extra=");
        try {
            JSONArray httpData = httpResult.getJSONArray("data");
        } catch (JSONException e) {
            e.printStackTrace();
        }

但它一直给我错误。
是因为我的json文件中的数据数组被引号包围了吗?
请帮忙

最佳答案

当然,data 是一个字符串(用引号括起来的字符),它不能被读取为 JSONArray。

如果你不能让你的 php 生成 JSON 数组,你可以在 Android 大小上做的是使用以下方法获取 data 字符串:

String data = httpResult.getString("data");

然后您可以使用以下命令创建 JSONARRAY:

JSONArray constructor

JSONArray dataArray = new JSONArray(data)

关于java - 将 json 字符串转换为 json 数组 - android java,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27542498/

相关文章:

android - 未调用 Loadmanager onLoadFinished

android - 如何获取 RTSP URL?

java - 三个按钮问题

javascript - 使用 javascript 隐藏显示功能时出错

php - WooCommerce 中产品下的相关产品文本太高?

php - 类似于 CLOS 的 PHP 对象模型

java - Android:RecyclerView.SetAdapter 导致应用程序崩溃,但没有明显错误

java - 无法将 ActionListener 添加到 JPanel?

java - 如何在 Gradle 中将源代码添加到 Jacoco 报告中

java - HashMap 的意外输出