如何为 json 对象打印 json 路径
How to print jsonpath for json object
我正在寻找 java API,它为 json 对象中的所有字段打印 jsonpath。我的第一部分要求是,对于给定的 json 对象(或字符串)-
{
"store": {
"book": [
{
"category": "reference",
"author": "Nigel Rees",
"title": "Sayings of the Century",
"price": 8.95
},
{
"category": "fiction",
"author": "Evelyn Waugh",
"title": "Sword of Honour",
"price": 12.99
}
}
它应该以键值对的方式打印所有属性,其中键是json字段的路径。
输出应该如下所示 -
$.store.book[0].category=reference
$.store.book[0].author=Nigel Rees
$.store.book[0].title=Sayings of the Century
$.store.book[0].price=8.95
$.store.book[1].category=fiction
$.store.book[1].author=Evelyn Waugh
$.store.book[1].title=Sword of Honour
$.store.book[1].price=12.99
等等。这将用于匹配来自另一个 json 对象的值(我的第二个要求)。
我找到了一个 API https://github.com/json-path/JsonPath,它有点符合我要求的第二部分,但它没有任何实用方法或获取对象或字段的 JsonPath 的方法。
在 jsonpath 中是否有任何 java api 或方法,我可以在其中获取 json 对象中给定字段的 jsonpath?
您是否尝试过使用 gson 库,看看 com.google.gson.stream.JsonReader.getPath() 我认为这会让您走上正确的方向。
我正在寻找 java API,它为 json 对象中的所有字段打印 jsonpath。我的第一部分要求是,对于给定的 json 对象(或字符串)-
{
"store": {
"book": [
{
"category": "reference",
"author": "Nigel Rees",
"title": "Sayings of the Century",
"price": 8.95
},
{
"category": "fiction",
"author": "Evelyn Waugh",
"title": "Sword of Honour",
"price": 12.99
}
}
它应该以键值对的方式打印所有属性,其中键是json字段的路径。
输出应该如下所示 -
$.store.book[0].category=reference
$.store.book[0].author=Nigel Rees
$.store.book[0].title=Sayings of the Century
$.store.book[0].price=8.95
$.store.book[1].category=fiction
$.store.book[1].author=Evelyn Waugh
$.store.book[1].title=Sword of Honour
$.store.book[1].price=12.99
等等。这将用于匹配来自另一个 json 对象的值(我的第二个要求)。
我找到了一个 API https://github.com/json-path/JsonPath,它有点符合我要求的第二部分,但它没有任何实用方法或获取对象或字段的 JsonPath 的方法。
在 jsonpath 中是否有任何 java api 或方法,我可以在其中获取 json 对象中给定字段的 jsonpath?
您是否尝试过使用 gson 库,看看 com.google.gson.stream.JsonReader.getPath() 我认为这会让您走上正确的方向。