Разбор JSON с использованием Java JSONParser - PullRequest
0 голосов
/ 07 марта 2020

Я пытаюсь разобрать файл JSON. Я написал приведенный ниже код для разбора, используя Java JSONParser:

    public static void parseJSONResponse(JSONObject jsonObj) {
            for (Object keyObj : jsonObj.keySet()) {
                String key = (String) keyObj;
                Object valObj = jsonObj.get(key);
                if (valObj instanceof JSONObject) {
                    parseJSONResponse((JSONObject) valObj);
                } else if (valObj instanceof JSONArray) {
                    System.err.println("ARRAY");
                } else {
                    System.out.println(key + " -> " + valObj.toString());
                }
            }
        }

    public static void main(String[] args) {
    try {
                FileReader reader = new FileReader("C:\\Users\\extract.json");
                JSONParser parser = new JSONParser();
                Object obj = (JSONObject) parser.parse(reader);
                JSONObject object = (JSONObject) (obj);
                parseJSONResponse(object);
            } catch (IOException | ParseException e) {
                e.printStackTrace();
            }
}

Он возвращает мне ответ, подобный следующему:

description -> For testing purposes only
indexUpdatedAt -> 1420751985
flags -> ["default","restorable","restorePossibleForType"]
data -> [["row-mfpy.gr8q.cpii","00000000-0000"],["00009","9BCA"]]
columns -> [{"renderTypeName":"meta_data","fieldName":":sid"},{"renderTypeName":"meta_data"}]

Мне нужно дополнительно разобрать "flags", "data «&» столбцы »для получения значений по отдельности. Как я могу изменить мой метод "parseJSONResponse" для достижения этой цели?

...