所以我试图将JSONArray中的值转换为JSONObject但我不断收到此错误: org.json.JSONException:类型为java.lang.String的0的值Aamod Shoghi无法转换为JSONObject
JSONObject json = jParser.makeHttpRequest(url_all_resorts, "POST", params);
Log.d("All Resorts : ", json.toString());
// Checking for SUCCESS TAG
int success = json.getInt(TAG_SUCCESS);
if (success == 1) {
// resorts found
// Getting Array of resorts
resorts = json.getJSONArray(TAG_RESORT);
rates = json.getJSONArray(TAG_PRICE);
int i;
// looping through All resorts
for (i = 0; i < resorts.length() & i < rates.length(); i++) {
JSONObject c = resorts.getJSONObject(i);
JSONObject d = rates.getJSONObject(i);
// Storing each json item in variable
String name = c.getString(TAG_NAME);
String price = d.getString(TAG_ROOM_PRICE);
// creating new HashMap
HashMap<String, String> map = new HashMap<String, String>();
// adding each child node to HashMap key => value
map.put(TAG_NAME, name);
map.put(TAG_ROOM_PRICE, price);
// adding HashList to ArrayList
resortsList.add(map);
}
}
JSON示例数据
{"resorts":["Aamod Shoghi","Aamod Shoghi","Aamod Shoghi"],"room_prices":["100","800","1000"],"success":1}
答案 0 :(得分:1)
您的<% @booksearches.each do |booksearch| %><div><h3><%= link_to booksearch.title, booksearch %></h3></div>
<% end %>
和resorts
数组仅包含room_prices
。
使用:强>
strings
代替:
// Storing each json item in variable
String name = resorts.getString(i);
String price = rates.getString(i);
试试这个:
JSONObject c = resorts.getJSONObject(i);
JSONObject d = rates.getJSONObject(i);
// Storing each json item in variable
String name = c.getString(TAG_NAME);
String price = d.getString(TAG_ROOM_PRICE);