【发布时间】:2019-08-13 15:17:18
【问题描述】:
我的应用从服务器获取 JSON 响应。响应字符串具有多行和多列。我需要用java打印这个。
这是我的 JSON 响应:
[
{
"name": "name2",
"id": "99",
"email": "ad@e.com"
},
{
"name": "zca",
"id": "96",
"email": "as2c2@d.d",
}
]
这是java部分:
OkHttpClient client = new OkHttpClient();
String url = ServerConstants.BROWSE_URL;
//String url = "https://reqres.in/api/users?page=2";
Request request = new Request.Builder()
.url(url)
.build();
client.newCall(request).enqueue(new Callback()
{
@Override
public void onFailure(Call call, IOException e)
{
e.printStackTrace();
}
@Override
public void onResponse(Call call, Response response) throws IOException
{
if (response.isSuccessful())
{
final String myResponse = response.body().string();
//System.out.println(Arrays.asList(new BundleFunctions().MakeArrayListFormJSON(myResponse)));
bundle = new BundleFunctions().MakeBundleFromJSON(myResponse);
//System.out.println("this is size ------- "+bundle.size());
//System.out.println("this is response ------ "+myResponse);
Browse.this.runOnUiThread(new Runnable()
{
@Override
public void run()
{
tv.setText(myResponse);
Set<String> keys = bundle.keySet();
for(String key : keys)
{
Object o = bundle.get(key);
}
}
});
}
}
});
我需要在 java 中像这样打印每个人:
(人数根据数组索引FCFS)
人员 1 - 姓名:name2,id:99,电子邮件:ad@e.com
第 2 个人 - 姓名:zca,id:96,电子邮件:as2c2@d.d
请教我最简单的方法
【问题讨论】:
-
到目前为止你尝试过什么?请出示您的相关代码。
-
好的等待显示
-
Android 内置了处理 JSON 的类,例如 JSONArray 和 JSONObject。使用它们,那么通过 JSONarray 循环是一件简单的事情
-
@Christopher 请看一看。此方法仅通过 Object o 获取 1 行而不是全部内容
标签: java android arrays json list