【发布时间】:2021-06-18 01:36:03
【问题描述】:
我正在尝试从以下 JSON 中获取并打印每家餐厅的 Name 和 StarRating 的值,我已对其进行了 sn-p(在此之上还有更多,但这是相关的位我正在尝试提取。完整链接可在此处获得API):
Restaurants": [
{
"Id": 89024,
"Name": "Regina Pizza",
"UniqueName": "regina-pizza-new-croydon",
"Address": {
"City": "Croydon",
"FirstLine": "309 Lower Addiscombe Road",
"Postcode": "CR0 6RF",
"Latitude": 51.382231,
"Longitude": -0.069915
},
"City": "Croydon",
"Postcode": "CR0 6RF",
"Latitude": 0.0,
"Longitude": 0.0,
"Rating": {
"Count": 561,
"Average": 5.18,
"StarRating": 5.18
}
我有以下方法获取数据:
public static String parse(String responseBody) {
JSONArray restaurants = new JSONArray(responseBody);
for (int i = 0; i < restaurants.length(); i++) {
JSONObject restaurant = restaurants.getJSONObject(i);
String name = restaurant.getString("Name");
int rating = restaurant.getInt("StarRating");
System.out.println("Restaurant: " + name + " Rating: " + rating);
}
return null;
}
-
运行代码时,我收到一条错误消息,指出
JSONArray必须以 '[' 开头。 -
我试图找到类似的嵌套 JSON 示例,但找不到相关示例。
【问题讨论】: