如何解析内部JSON元素?

时间:2014-03-03 09:29:13

标签: java json

我正在使用由tutorialpoint.com推荐的json-simple-1.1.1.jar

我的JSON文件显示在这里:

JSON structure

我的java代码在这里:

my code

我无法理解如何在JSON文件中访问"onclick": "CloseDoc()"

如果我使用getObject方法,则会向我显示错误:

  

对于类型JSONObject

,方法getJSONObject(String)未定义

2 个答案:

答案 0 :(得分:0)

也许您可以检查导入是 org.json.simple.JSONObject 但是这个jar没有调用getJsonObject的方法。

答案 1 :(得分:0)

onClick位于对象menuitem内的数组menu内,因此您必须循环数组以检索所需内容。你可以这样试试:

        JSONParser parser = new JSONParser();
        Object obj = parser.parse(new InputStreamReader(in));
        String json_str = obj.toString();
        JSONObject j_org_json_obj = new JSONObject(json_str);
        JSONArray j_org_json_arr = j_org_json_obj.getJSONObject("menu").getJSONArray("menuitem");
        for(int i=0;i<j_org_json_arr.length();i++)
        {
            System.out.println(j_org_json_arr.getJSONObject(i).getString("onClick()"));
        }

json-simple jar一起,在上面的代码中还包含了一个jar:org-json jar,因此也要导入它。