我目前正在使用 Java,从网络服务读取 JSON 响应。 到目前为止,我一直在为预先知道的路径解析 JSON。所以我可以根据情况制作对象和数组。
String jsonText = readAll(br);
JSONObject json = new JSONObject(jsonText);
JSONObject resp = json.getJSONObject("Response");
但是现在我遇到了一个问题。我必须要求用户提供一条路径,并且我必须在 JSON 响应中获取该路径的值。路径可能不正确 - 在这种情况下返回错误。
有点像 XML 中的 XPath。我们在 JSON 中有类似的东西吗?
例如,路径可能如下所示: /Response/VehicleSearch/Vehicles/Vehicle[2]/Features/Feature[7]/ID
如果这是一个愚蠢的问题,请原谅。任何帮助表示赞赏。 提前致谢。
最佳答案
对于 JSON
等同于 XML 的 XPATH
,您可以使用 JsonPath
根据文档:
JsonPath
is toJSON
whatXPATH
is toXML
, a simple way to extract parts of a given document.JsonPath
is available in many programming languages such asJavascript
,Python
andPHP
. Now also in Java!
关于java - 在 Java 中解析 JSON,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18538898/