【问题标题】:Android error on parse json when array key have more length当数组键具有更多长度时,解析 json 时出现 Android 错误
【发布时间】:2015-10-09 09:10:00
【问题描述】:

我正在尝试解析来自服务器的 json 数组响应。例如我可以简单地解析这个响应:

echo json_encode(['result' => 0,'h'=>1,'m'=>2]);

但是为了解析这个 json 格式:

echo json_encode(['result' => 0,'hour'=>1,'minute'=>2]);

我得到这个错误:

 E/Response:: {"result":0,"hour":"1","minute":"35"}
 E/AndroidRuntime: FATAL EXCEPTION: main
 E/AndroidRuntime: Process: pishguy.ir.asrebidree, PID: 6322
 E/AndroidRuntime: java.util.UnknownFormatConversionException: Conversion: س
 E/AndroidRuntime:     at java.util.Formatter$FormatToken.unknownFormatConversionException(Formatter.java:1399)

我的代码:

JSONObject jsonObject = new JSONObject(response);
String result = jsonObject.getString("result");

if (result.equals("0")) {
    String hore = jsonObject.getString("hour");
    String minute = jsonObject.getString("minute");
}

更新

问题是 hourminute 单词,而不是 json 数组中的 result 键。将hourminute 更改为hm 后问题解决了

【问题讨论】:

  • “result”键的值不是字符串

标签: php android


【解决方案1】:

您的 result 是 contian int 值...试试这个

int result = jsonObject.getInt("result");

【讨论】:

    猜你喜欢
    • 2013-11-07
    • 2011-12-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-05-22
    • 1970-01-01
    • 2022-01-04
    相关资源
    最近更新 更多