Android 如何使用对象内部的对象访问json
我有上面的json文档。如何访问其中的Product1和Product2。 就像Android 如何使用对象内部的对象访问json,android,json,Android,Json,我有上面的json文档。如何访问其中的Product1和Product2。 就像 { "abc": "abc", "xyz": "xyz", "proudct1": { "id": "id", "name": "name" }, "proudct2": { "id": "id", "name": "name" } } 您可以使用JSONOBject,它与SDK捆绑在一起,因此无需导入任何第三方库 假设上面的字符串是响应 JSONObjec
{
"abc": "abc",
"xyz": "xyz",
"proudct1": {
"id": "id",
"name": "name"
},
"proudct2": {
"id": "id",
"name": "name"
}
}
您可以使用
JSONOBject
,它与SDK捆绑在一起,因此无需导入任何第三方库
假设上面的字符串是响应
JSONObject responseObj=new JSONObject(response);
JSONObject product1=responseObj.getJSONObject("product1");
String id=product1.getString("Id");
// ... and similarly for other keys
如果你有多表产品。您的json无效。产品必须类似于json数组
{
"product": "Product Data",
"version": 1.1,
"releaseDate": "2017-01-18T00:00:00.000Z",
"demo": true,
"products": [
{
"Id": "1",
"isDisplayed": "Yes",
"Title1": "Microsoft",
"Title2": "India",
"URL": "abc",
"ImageName": "Microsoft Logo",
"isImgDownloaded": "Yes",
"ImageURL": "xyz"
},
{
"Id": "2",
"isDisplayed": "Yes",
"Title1": "Google",
"Title2": "India",
"URL": "abc",
"ImageName": "Google Logo",
"isImgDownloaded": "Yes",
"ImageURL": "xyz"
}
]
}
您可以像这样访问jsonarray对象
JSONArray result = jsonString.getJSONArray("products");
for (int i = 0; i < result.length(); i++){
JSONObject jsonObjectItem = result.getJSONObject(i);
.
.
.
}
JSONArray结果=jsonString.getJSONArray(“产品”);
for(int i=0;i
首先学习如何解析json,如果在解析过程中遇到任何问题,请自行尝试,然后在此处发布。使用创建getter setter。@Redman我知道如何解析json,但不知道如何访问对象中的对象。@SatanPandeya谢谢,但我不想使用这些。投票,因为这也表明了有效的结构:)我已更新了json,并试图通过资产文件夹访问它,但在生成C:\Users\Abhinav\AndroidStudioProjects\interporation\app\src\main\res\assets\demo.json错误:(1,1)错误:prolog中不允许包含内容。错误:任务“”的执行失败:应用程序:mergeDebugResources'>C:\Users\Abhinav\AndroidStudioProjects\interporation\app\src\main\res\assets\demo.json:1:1:错误:prolog中不允许包含内容。您检查了吗