gpt4 book ai didi

java - 如何在 Jackson json 库中执行 peek()?

转载 作者:塔克拉玛干 更新时间:2023-11-02 07:58:14 28 4
gpt4 key购买 nike

我正在使用 Streaming API JsonParserJackson在 java 中进行一些自定义 json 解析的库。

是否有一种方法可以实现类似于 peek() 方法的功能,即返回下一个标记但光标位置不向前移动?

此用例类似于以下内容:

JsonParser parser = new JsonFactory().createParser(inputStream);
while(parser.peek() != JsonToken.START_ARRAY){
...do something with the current token...
}

我看到的关于 Jackson 的代码示例对上述情况使用了 nextToken() 方法,不幸的是,它也会在流中向前移动光标。

peek() 是否可以使用 Jackson 开箱即用,或者可以通过其他方法实现?

注意。对其他图书馆不感兴趣,所以请不要输入“图书馆 x 和厨房水槽”的答案。

最佳答案

没有,目前没有这样的功能。您也许可以通过使用委托(delegate)包装器来做到这一点?有“org.codehaus.jackson.util.JsonParserDelegate”,它可以使它相对容易实现,具体取决于您要保留的有关当前元素的信息。

无论它值多少钱,都可以添加 JsonParser.peek();请求此功能的最佳方式是在 http://jira.codehaus.org/browse/JACKSON 提交功能请求。 .很可能还没有任何人请求此功能。

这可能很容易(足够)实现的原因是它应该只需要一个字符前瞻。

关于java - 如何在 Jackson json 库中执行 peek()?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3109042/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com