非常感谢您在另一个答案中的代码。由于您的代码,我可以读取任何JSON文件。现在,我试着按层次组织所有元素,因为可以使用它们!
我正在使用Android从URL中读取JSON,唯一需要更改的就是行
Set set = jsonObject.keySet();
Iterator iterator = set.iterator();
为
Iterator> iterator = jsonObject.keys();
我分享我的实施,以帮助某人:public void parseJson(JSONObject jsonObject) throws ParseException, JSONException {
Iterator> iterator = jsonObject.keys();
while (iterator.hasNext()) {
String obj = iterator.next().toString();
if (jsonObject.get(obj) instanceof JSONArray) {
//Toast.makeText(MainActivity.this, "Objeto: JSONArray", Toast.LENGTH_SHORT).show();
//System.out.println(obj.toString());
TextView txtView = new TextView(this);
txtView.setText(obj.toString());
layoutIzq.addView(txtView);
getArray(jsonObject.get(obj));
} else {
if (jsonObject.get(obj) instanceof JSONObject) {
//Toast.makeText(MainActivity.this, "Objeto: JSONObject", Toast.LENGTH_SHORT).show();
parseJson((JSONObject) jsonObject.get(obj));
} else {
//Toast.makeText(MainActivity.this, "Objeto: Value", Toast.LENGTH_SHORT).show();
//System.out.println(obj.toString() + "\t"+ jsonObject.get(obj));
TextView txtView = new TextView(this);
txtView.setText(obj.toString() + "\t"+ jsonObject.get(obj));
layoutIzq.addView(txtView);
}
}
}}