首页 >Java >java教程 >为什么我的字符串到 JSONArray 转换在 Android 中失败,如何修复?

为什么我的字符串到 JSONArray 转换在 Android 中失败,如何修复?

Patricia Arquette
Patricia Arquette原创
2024-11-26 11:27:10896浏览

Why Does My String-to-JSONArray Conversion Fail in Android, and How Can I Fix It?

将字符串转换为 JSON 数组的问题

在尝试将 Web 服务中的 JSON 字符串解析为 JSON 数组时,Android开发人员遇到类型不匹配异常。提供的 JSON 字符串有效,并且使用了以下代码:

JSONArray jsonArray = new JSONArray(readlocationFeed);

解决方案

问题在于所创建的 JSON 对象的类型。接收到的JSON实际上是一个JSON对象,而不是一个数组。要解决此问题,应按如下方式修改代码:

JSONObject jsonObject = new JSONObject(readlocationFeed);

JSONArray jsonArray = jsonObject.getJSONArray("locations");

这将从 JSON 字符串创建一个 JSONObject,然后从中检索“locations”数组。然后可以迭代该数组以访问各个位置对象。这是修改后的代码:

JSONObject jsonObject = new JSONObject(readlocationFeed);

JSONArray jsonArray = jsonObject.getJSONArray("locations");
for (int i = 0; i < jsonArray.length(); i++) {
    JSONObject locationObject = jsonArray.getJSONObject(i);
}

以上是为什么我的字符串到 JSONArray 转换在 Android 中失败,如何修复?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn