【问题标题】:Sending Integer to Json Call将整数发送到 Json 调用
【发布时间】:2014-06-22 19:08:47
【问题描述】:

其实“严格来说,json 是无类型的,所以不能作为整数发送,必须是字符串。”在that question 2 年前说过。所以我想知道 JSON 中是否有任何更改以从 JSON 对象获取整数。我尝试通过这种方式调用整数;

static int versionCode=0;
jsonObject = new JSONObject(result);
JSONObject queryJSONObject = jsonObject.getJSONObject("query");
versionCode =queryJSONObject.getInt("versionCode"); 

而JSON是这样的;

{"query":{"versionCode":1,....}}

有什么办法吗?

谢谢。

【问题讨论】:

  • 您问的是发送或接收/获取整数吗?您的标题与您的代码相矛盾。另外,可能相关:How to parse JSON in Android
  • 你是对的,它应该正在接收。感谢您的评论。

标签: android json object integer call


【解决方案1】:

按照Tutorial,您可以使用 getString() 函数来获取值,然后您可以像这样 int foo = Integer.parseInt("1234"); 将其转换为整数,根据您的需要

【讨论】:

    【解决方案2】:

    JSON 有一个数字元素,请参阅 JSON.org

    JSON 是一个字符序列。但我不同意在这种情况下数字是字符串。恕我直言,对我来说,字符串用双引号括起来(数字不是)。

    您的代码应该可以工作:json.getInt("versionCode")Source from Android Developer

    【讨论】:

    • 字符串调用没有问题,当我添加该部分应用程序停止时,当我将其注释掉时,应用程序可以工作。感谢您的回答。
    • 你能添加一个 Try/Catch 子句,看看抛出了什么异常(或查看 LogCat)
    猜你喜欢
    • 2018-08-25
    • 2012-02-28
    • 2016-09-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-05-03
    • 2023-03-10
    • 1970-01-01
    相关资源
    最近更新 更多