gpt4 book ai didi

java - 正确关闭 URLConnection 和 InputStream?

转载 作者:IT老高 更新时间:2023-10-28 20:45:45 40 4
gpt4 key购买 nike

我见过许多使用 HttpURLConnection + InputStream 的不同示例,并在使用后关闭它们(或不关闭它们)。这是我想出的,以确保在完成后关闭所有内容,无论是否有错误。这有效吗?:

HttpURLConnection conn = null;
InputStream is = null;
try {
URL url = new URL("http://example.com");

// (set connection and read timeouts on the connection)
conn = (HttpURLConnection)url.openConnection();

is = new BufferedInputStream(conn.getInputStream());

doSomethingWithInputStream(is);

} catch (Exception ex) {
} finally {
if (is != null) {
try {
is.close();
} catch (IOException e) {
}
}
if (conn != null) {
conn.disconnect();
}
}

谢谢

最佳答案

是的.. 在 finally 中做最后部分是最好的主意,因为如果代码在某处失败,程序将无法到达 .close(), .disconnect() 我们在 catch 语句之前保留的语句...

如果代码在某处失败并且在程序之间抛出了异常,无论抛出什么异常,最终仍然会被执行......

关于java - 正确关闭 URLConnection 和 InputStream?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9150200/

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