android - 从 JSON 对象获取值的问题

标签 android json

我试图在用户成功登录后获取数据,但我从未得到任何结果,我接下来要做的是:

// response is my request to server
JSONObject obj = new JSONObject(response);
Log.d("RESPONSE",obj.toString());

所以在日志中我确实看到了值,例如:

04-19 11:28:16.729: D/RESPONSE(3162): {"data":[{"loses":3,"username":"benedict","level":1,"strength":15,"experience":null,"gold":10,"password":"benedict","intelligence":5,"agility":10,"wins":5}],"status":true}

但是一旦我尝试像这样读取用户名:

String username = obj.getString("username");

上面的代码 ^ 在我的字符串中没有任何内容.. 对如何从 JSONObject 检索数据有帮助吗?谢谢!

最佳答案

那是因为 username 存在于 data 对象中,它恰好是一个 JSONArray。从response对象中获取data数组,遍历数组中的每一个JSONObject,从每个对象中,提取出你的username.

像这样:-

JSONObject obj = new JSONObject(response);
JSONArray data = obj.getJSONArray("data");
for(int i=0;i<data.length();i++){
    JSONObject eachData = data.getJSONObject(i);
    System.out.println("Username= "+ eachData.getString("username"));
}

关于android - 从 JSON 对象获取值的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16101320/

相关文章:

Android AnimationDrawable 缩放

java - android中的屏幕镜像

ajax - 使用AJAX读取语法错误JSON文件

json - 根据 JSON 标准将复选标记应用于某些 tableView 行

ruby-on-rails - Ruby 数组到 JSON 和 Rails JSON 渲染

php - 从类似于树的 mysql 结果集创建 Json

java - json 中的 Json 在 Spring Boot 中不起作用

Android Studio 未与 adb GLIBC 通信....未找到错误

java - 如何将微调项目设置为等于某个值

android - 在 notifyDataSetChanged 之后 FragmentStateAdapter 没有重新创建 currentFragment