当前位置: 首页 > 知识库问答 >
问题:

如何解析JSON响应对象的数组,其中数组没有键名

封飞
2023-03-14

我正在尝试解析没有数组名的json结果。以下是我的json回复:

[
    {
        "Id": 2293,
        "Name": "Dr.",
        "Active": true
    },
    {
        "Id": 2305,
        "Name": "Mr.",
        "Active": true
    },
    {
        "Id": 2315,
        "Name": "Mrs.",
        "Active": true
    }
]

如何使用com解析这个。收拾一下。改装2:改装:2.1.0库?

共有2个答案

齐铭
2023-03-14

通常,您可以将其解析为

String response = "[{"Id": 2293,"Name": "Dr.","Active": true},{"Id": 2305,"Name": "Mr.","Active": true},{"Id": 2315,"Name": "Mrs.","Active": true}]";
    try {
        JSONArray ja = new JSONArray(response);
        for (int i = 0; i < ja.length(); i++) {
            JSONObject jo = ja.getJSONObject(i);
            String id = jo.getString("Id");
            String name = jo.getString("Name");
            String active = jo.getString("Active");
        }
    } catch (JSONException e) {
        e.printStackTrace();
    }

如果您想使用Model Class解析它,那么您的Model Class将用于Retromet

 class Response
{

    @SerializedName("Id")
    @Expose
    private String id;

    @SerializedName("Name")
    @Expose
    private String name;

    @SerializedName("Active")
    @Expose
    private String active;

}

然后定义这样的改装

Call<List<Meeting>> getMeetings(@Field String data );

希望这能有所帮助

陶高扬
2023-03-14

创建一个类,比如,

class Test {

     public List<TestValue> testValues;
}

然后调用API,

Call<List<Test>> getTestData(@Field("xyz") String field1);


   Call <List<Test>> call = service.getTestData("val");

   call.enqueue(new Callback<List<Test>>() {
    @Override
    public void onResponse(Call<List<Test>> call, Response<List<Test>> 
                              response) {

        List<Test> rs = response.body();

    }

    @Override
    public void onFailure(Call<List<Test>> call, Throwable t) {

    }
});

User你的Model类,这只是用于示例目的。

 类似资料:
  • 问题内容: 我正在与Retrofit和GSON合作。我有一个作为JSON数组的JSON响应,但我不知道如何使用模型类来解析它。我的回答如下: 问题答案: 只需在回调中调用字符串列表,它就可以完成工作…

  • 问题内容: 我试图从JSON数组中获取每个JSON对象。我通过HTTP发布获得此数据。 我知道我的数据是什么样的: 我的示例代码和结构如下所示: 我不确定如何遍历JSON数组并获取JSON对象,然后仅使用JSON对象。 问题答案: 试试这个作为您的结构, 您的名称不正确,顶层名称也不正确。解码为a之后,您可以遍历切片以获取每个切片

  • 问题内容: 我正在编写一个使用Json API的库,并且在使用Gson作为解析库时遇到了设计问题。 如果一切顺利,则端点之一将返回对象: 但是,API中所有端点的错误模式都是json 而不是数组。 在POJO中对此建模时会出现问题。因为错误模式对于所有API端点都是通用的,所以我决定有一个仅映射errors属性的抽象类。 现在,我想继承自此,以获取“免费”错误映射和每个API端点响应的POJO。但

  • 问题内容: 我想知道如何解析NodeJS中的JSON对象数组? 我想将JSON数组发布到服务器,并能够将接收到的数组用作可靠的JavaScript数组。 提前致谢。 这是我要使用stringify函数将Array转换为String的前端部分 这是我尝试将JSON对象的Array转换为Array的后端部分 这是我要发送到服务器的数组: 这是源代码 问题答案: 在您的: 然后,您可以使用来获取过帐的值

  • 问题内容: 我很难找到一种方法来解析JSONArray。看起来像这样: 如果JSON的写法不同,我知道如何解析它(换句话说,如果我返回了json对象而不是对象数组)。但这就是我所必须拥有的。 *编辑:这是一个有效的json。我使用此json制作了一个iPhone应用,现在我需要在Android上使用它,但无法弄清楚。有很多示例,但是它们都是与JSONObject相关的。我需要JSONArray。

  • 问题内容: 我有以下格式的对象数组: 我想要得到的是C#中的代码,其中一个对象包含一个json对象中的所有数据。问题是,我可以 不 使一个类与此对象喜欢这里的属性: 因为我每次都会得到不同的结果,但是我知道它总是一个对象数组。有人知道我如何设法取回一系列对象? 编辑 我必须通过将该对象传递给powershell 。因此,输出仅应是中的对象。 问题答案: 像这样使用newtonsoft: