【发布时间】:2014-02-25 03:47:29
【问题描述】:
我有这个 JSON 代码:
{
"success": 1,
"item": [
{
"itemId": "jogurt123",
"name": "Jogurt",
"description": "kajmak",
"pictureUrl": "https://www.google.hr/images/srpr/logo11w.png",
"categoryId": "mlijeko"
}
],
"specs": [
{
"specId": "volumen",
"value": "1",
"unit": "litra"
},
{
"specId": "mast",
"value": "50",
"unit": "%"
}
]
}
我想知道如何使用 Java 将名称/值对提取到字符串中。 我想得到最终结果:
String name = "Jogurt"
String description = "kajmak"
etc...
我尝试使用 JSONObject 创建一个包含此名称/值对的对象,然后我想提取它们,但在以下代码中
String getParam(String code, String element){
try {
String base = this.getItembyID(code);
JSONObject product = new JSONObject(base);
String param = product.getString("name");
return param;
} catch (JSONException e) {
e.printStackTrace();
return "error";
}
}
我得到一个例外,说 JSONObject 中没有元素“名称”,但显然存在。有什么建议吗?
编辑:getItembyID 方法以字符串形式返回上面编写的 JSON 代码。 JSON 代码已经过验证
【问题讨论】:
-
您是否转储(toString)
product对象以查看它的样子?您需要先了解 JSON 结构的结构,然后才能从中提取数据。