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

从JSON Android获取Int值

姬国安
2023-03-14

我得到的字符串值如下所示:

[{
  "data": [127, 145, 225, 167, 200, 173, 411, 505, 457, 243, 226, 156, 298, 237, 425, 405, 391, 258]
}]
[127, 145, 225, 167, 200, 173, 411, 505, 457, 243, 226, 156, 298, 237, 425, 405, 391, 258]
try {
  final JSONObject obj = new JSONObject(s);

  final JSONArray geodata = obj.getJSONArray("data");
  final JSONObject person = geodata.getJSONObject(0);
  Log.d("myListjson", String.valueOf(person.getString("data")));

} catch (JSONException e) {
  e.printStackTrace();
}

共有1个答案

籍英叡
2023-03-14

您访问元素的方式是错误的。您应该使用循环访问JSONArray中的每个元素

这应该行得通

String s = "[{\"data\":[127, 145, 225, 167, 200, 173, 411, 505, 457, 243, 226, 156, 298, 237, 425, 405, 391, 258]}]";
        try {
            final JSONObject obj = new JSONObject(s);
            final JSONArray geodata = obj.getJSONArray("data");
            for(int i=0; i < geodata.length(); i++){
                int number = (int) geodata.get(i);
                Log.d("Number", String.valueOf(number));
            }
        } catch (JSONException e) {
            e.printStackTrace();
        }
 类似资料:
  • 问题内容: 您如何从字母char获得VK代码?看来您应该能够执行类似的操作,但这不起作用(结果为零)。如果您已经拥有一个KeyEvent,那么每个人都知道如何获取键码,但是如果您只是想将chars转换为VK int,该怎么办?我对获取奇怪字符的FK代码不感兴趣,只有[AZ],[az],[0-9]。 这个问题的背景--------我见过的所有机器人教程都假定程序员喜欢通过发送带有VK代码的按键来拼写

  • 问题内容: 如何从诸如-的字符串中获取int值,即包含数字但也可能包含字母的字符串? 失败,因为字符串必须完全是数字。 问题答案: 除非您正在谈论以16为基数的数字(有一种方法可以将其解析为十六进制),否则您需要明确地分离出您感兴趣的部分,然后进行转换。毕竟,以10为底的23e44e11d之类的语义是什么? 如果您确定只有一个数字,则正则表达式可以解决问题。Java具有内置的正则表达式解析器。 另

  • 问题内容: 我想在Swift中获取UIColor的RGB值: 在Java中,我将按以下方式进行操作: 我应该如何获得这个价值? 问题答案: Java 返回一个表示默认sRGB颜色空间中颜色的整数(位24-31是alpha,16-23是红色,8-15是绿色,0-7是蓝色)。 没有这种方法,但是您可以定义自己的方法: 用法: 请注意,只有在“兼容RGB”的色彩空间(例如RGB,HSB或GrayScal

  • 问题内容: 以前,我将LegNo枚举定义为: 通过调用,我可以获得与每个枚举关联的值。 但是现在我决定让枚举是int -1而不是0,所以我决定使用私有构造函数进行初始化并设置其int值 现在唯一的事情就是因为我这样做,所以该方法不适用于枚举。我如何获得与int相关联的枚举?除了使用case switch语句或if-elseif-elseif之外,还有其他有效的方法吗? 我可以看到很多与从枚举获取i