KnowledgeHub
Questions
Tags
Users
Search
Alex Rivera
|
Logout
Edit Question
Title
Body
I'm trying to simplify my code: I want to store key and values (all strings). I'm actually using a Map<String, Object> to store it. hat way Object could be a value ( String ) or a new node ( Map<String, Object> ). How could I simplify this code? A recursive function would be good. try { JsonParser jsonParser = new JsonFactory().createJsonParser(content); jsonParser.nextToken(); while (jsonParser.nextToken() != JsonToken.END_OBJECT) { jsonParser.nextToken(); if (jsonParser.getCurrentToken() == JsonToken.START_OBJECT) { while (jsonParser.nextToken() != JsonToken.END_OBJECT) { String key = jsonParser.getCurrentName(); jsonParser.nextToken(); if (jsonParser.getCurrentToken() == JsonToken.START_OBJECT) { mData.put(key, new HashMap<String, Object>()); while (jsonParser.nextToken() != JsonToken.END_OBJECT) { String subkey = jsonParser.getCurrentName(); jsonParser.nextToken(); if (jsonParser.getCurrentToken() == JsonToken.START_OBJECT) { Map<String, Object> subdata = (Map<String, Object>) mData.get(key); subdata.put(subkey, new HashMap<String, Object>()); while (jsonParser.nextToken() != JsonToken.END_OBJECT) { String subsubkey = jsonParser.getCurrentName(); jsonParser.nextToken(); Map<String, Object> subsubdata = (Map<String, Object>) subdata.get(subkey); LogHelper.d("data[" + key + "][" + subkey + "][" + subsubkey + "]=" + jsonParser.getText()); subsubdata.put(subsubkey, jsonParser.getText());
Tags (comma-separated)
Save Edits
Cancel