【发布时间】:2019-03-06 07:56:14
【问题描述】:
我是使用 json 文件的新手,我已经构建了一个分层的 json 对象,我正在尝试在 android studio Toast 中显示这些值,但其中一些值很关键,我不希望它们显示出来,但它们正在显示在此过程中,请指导您做错了什么
这是 json 文件的一部分(json 数组中的单个对象)
{
"county": "Nyeri",
"subcounty": ["Kieni East", [{
"ward": ["funny", [{
"policestation": ["null"]
}], "kkkkk", [{
"policestation": ["null"]
}]]
}], "Kieni West", [{
"ward": "null"
}], "Mathira East", [{
"ward": ["Magutu", [{
"policestation": ["Magutu", [{
"arbitrator": ["null"]
}], "Magutu ps", [{
"arbitrator": ["null"]
}], "Kagochi PS", [{
"arbitrator": ["null"]
}]]
}], "Iriani", [{
"policestation": ["null"]
}], "Konyu", [{
"policestation": ["null"]
}], "Kirimukuyu", [{
"policestation": ["null"]
}], "Karatina Town", [{
"policestation": ["Kagochi PS", [{
"arbitrator": ["null"]
}], "Gitunduti PS", [{
"arbitrator": ["christopher bundi", "silvester kasanga"]
}]]
}]]
}], "Mukurweini", [{
"ward": "null"
}], "Tetu", [{
"ward": ["rulie", [{
"policestation": ["null"]
}]]
}]]
}
这是代码并试图通过排除病房列表的键来访问子县
try {
JSONArray jsonArray = new JSONArray (response);
for (int i = 0; i < jsonArray.length (); i++) {
JSONObject jsonObject = jsonArray.getJSONObject (i);
String subcounty = jsonObject.getString ("subcounty");
Toast.makeText (getApplicationContext (), subcounty, Toast.LENGTH_LONG).show ();}//close try and catch follows
挑战在于选择子县值,排除那些对病房至关重要的值。 感谢您提供支持
【问题讨论】:
-
JSON 格式不正确,JSON 数组的第一个元素是字符串,第二个元素是 JSONArray
-
我应该如何构建 json 以实现......它下面的县的印象,列出其中的子县......然后为每个子县列出其中的病房,依此类推。感谢您提供支持
-
您可以在 Json 数组中添加 Json 对象,并且 1 个子对象可以包含 name:"country name", sub:[array of sub countries] 例如 [{"name":"Kieni East", "病房": ["sub1","sub2","sub3"] },{"name":"Kieni West", "病房": ["subWest1","subWest2","subWest3"] }]
-
我希望你知道 JSON 是如何工作的,每个 {} 代表一个对象,[] 代表数组。对象包含值对,即键:值。更多详情w3schools.com/js/js_json_intro.asp
-
感谢 hfarhanahmed 先生正在研究这样的结构,我会提供反馈