我想知道某处是否存在能够查询 JSONObject 的 java 库。更深入地,我正在寻找类似的东西:
String json = "{ data: { data2 : { value : 'hello'}}}";
...
// Somehow we managed to convert json to jsonObject
...
String result = jsonObject.getAsString("data.data2.value");
System.out.println(result);
我希望得到“hello”作为输出。
到目前为止,我发现最快的方法是使用 Gson:
jsonObject.getAsJsonObject("data").getAsJsonObject().get("data2").getAsJsonObject("value").getAsString();
实际上写和读并不容易。有更快的东西吗?
最佳答案
我刚刚意外发现了一个非常有趣的项目:JSON Path
JsonPath is to JSON what XPATH is to XML, a simple way to extract parts of a given document.
有了这个库,您可以更轻松地完成您的要求,然后是我之前的建议:
String hello = JsonPath.read(json, "$.data.data2.value");
System.out.println(hello); //prints hello
希望这也能有所帮助。
关于java - 在java中查询一个JSONObject,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15429775/