java 用于提取两个日期JsonPath表达式

ux6nzvsh  于 2022-11-27  发布在  Java
关注(0)|答案(1)|浏览(133)

我有一个JSON,有几个日期节点。我正在JsonPath的帮助下阅读JSON。有没有什么方法可以让我们写表达式,并得到两个日期之间的差异。我的JSON如下所示:

"data": [
         {
         "DateA": "2022-11-26Z",
          "otherFactor": 1,
          "DateB": "2022-10-26Z"
         }
        ]

我想使用JsonPath表达式计算两个日期之间差异在https://github.com/json-path/JsonPath文档中找不到任何内容

2ledvvac

2ledvvac1#

您可以考虑另一个库 * Josson *
https://github.com/octomix/josson

Josson josson = Josson.fromJsonString(
    "{\"data\": [" +
    "  {" +
    "    \"DateA\": \"2022-11-26Z\"," +
    "    \"otherFactor\": 1," +
    "    \"DateB\": \"2022-10-26Z\"" +
    "  }" +
    "]}");
JsonNode node = josson.getNode(
    "data.untilInDay(" +
    "  DateB.replace('Z','T00:00Z').offsetToLocalDate()," +
    "  DateA.replace('Z','T00:00Z').offsetToLocalDate()" +
    ")");
System.out.println(node.toPrettyString());
    • 输出**
[ 31 ]

相关问题