#java #android #json
#java #Android #json
Вопрос:
Я прочитал много примеров и попробовал. Но получить значение не получилось.
Результат вернул мне целый JSON.
Я не знаю, где что-то не так…
Я впервые задаю вопрос. Спасибо за помощь.
Вот мой код JSON и JAVA.
JSON:`
{
"food":{
"name":"XXX Food",
"details":{
"code":"01",
"location":{
"area":"Area D",
"place":"Food"
},
"price":"132.21",
"discount":"15%"
}
}
}
Теперь я хочу узнать цену.
Код JAVA:
JSONObject json = new JSONObject(recvStr);
JSONArray Results = json.getJSONArray("food");
JSONArray msg = Results.getJSONArray(0);
result = msg.getJSONObject(0).getString("price");
Комментарии:
1. просто мысль: если вы выполняете вызов rest, чтобы получить этот JSON, попробуйте SPring RestTemplate, а затем используйте Jackson как конвертер сообщений, чтобы связать ваш JSON с java model. это упростит вашу сортировку / отмену сортировки
Ответ №1:
Results
это не a JSONArray
, а JSONObject
:
JSONObject results = json.getJSONObject("food");
String name = results.getString("name");
JSONObject details = results.getJSONObject("details");
String price = details.getString("price");
Вы можете прочитать больше о JSON на json.org .