gpt4 book ai didi

java - gson中的JsonReader是否需要显式关闭

转载 作者:行者123 更新时间:2023-11-30 02:22:02 30 4
gpt4 key购买 nike

我想在读取 json 文件时使用 gson 来执行此操作:

JsonReader reader = new JsonReader(new InputStreamReader(
new FileInputStream(filename)));
JsonParser jsonParser = new JsonParser();
return jsonParser.parse(reader).getAsJsonObject();

我将在其他地方使用返回的 JsonObject 做更多事情。

我的问题是这是否可以,因为我从不关闭阅读器。

从JsonReader的gson API来看,JsonReader实现了AutoClosable。这是否意味着 JsonReader 会自动关闭?如果是这样,什么时候关闭以及如何关闭?

谢谢。

最佳答案

是的,您必须关闭阅读器。正如 shmosel 指出的那样,AutoClosable 可用于 Java 7 中引入的 try-with-resource 语句。

以下是调整代码的方法:

try(JsonReader reader = new JsonReader(new InputStreamReader(
new FileInputStream(filename))))
{
JsonParser jsonParser = new JsonParser();
return jsonParser.parse(reader).getAsJsonObject();
}

关于java - gson中的JsonReader是否需要显式关闭,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46534915/

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