我正在java中为一些JSON对象编写解析器。我必须从另一个JSON对象key = "some_key"
中提取一个带有parent
的JSON对象。 parent
的内容是:
{"some_key":{"some contents": true}, "other_child":{..}}
我用:
提取它child = parent.getJSONObject(key));
child
的内容是:
{"some contents": true}
然后我需要将它发送到另一个方法,该方法需要将该对象包含在具有相同键的一个中,但没有其他元素(例如没有“other_child”),所以我这样做:
newObject = new JSONObject().put(key, child);
newObject
的内容是:
{"some_key":{"some contents": true}}
它有效,但它似乎不是最有效的方法。有没有更优雅的方法来获得相同的newObject
结果,而无需创建两个对象?
我知道我可以按照以下方式在一行中完成,但内部也是相同的行为。
newObject = new JSONObject().put(key, parent.getJSONObject(key));
答案 0 :(得分:0)
如果我正确地遵循这个,你可以从父json对象本身创建新的子json对象
JSONObject child = parent.getJSONObject("status");
// child.setKey...does that help?
然后,您可以将此子json对象用于上述两种情况。
有类似的帖子JSONObject in JSONObject
希望这有帮助。
谢谢, 保罗