我试图从json对象中获取一个值.我如何获得第三级json对象:
json格式如下:
FeedString = {"level1":[{"level2":{"level3":{"valueIWant":10}}}]}
代码是:
JSONObject jsonFeed = new JSONObject(FeedString); jsonFeed.get("level1.level2.level3.valueIWant");
我可以一次获得嵌套级别吗?我的钥匙应该是什么样的?
解决方法
你可以给
JSONiJ (JSON in Java)一枪;它是
JSONPath的Java版本,基本上将XPath语法的一部分映射到JSON对象上.
另外,请参阅this SO question了解其他一些想法;它看起来像json-path有Java版本,并使用点表示法.
另一个选择是在JSONObjects和类似MVEL或OGNL之类的东西之间构建一个EL桥,这将为您提供更熟悉的点符号. (我以为有一个MVEL / JSON桥,但现在找不到它.)