gpt4 book ai didi

java - InputStream - 处理网络变化

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

我正在使用 Java 邮件 API 下载附件,每当网络状态发生微小变化时,我的应用就会卡住,我必须重新启动它,它甚至没有崩溃。这是代码 fragment :

InputStream is = bodyPart.getInputStream();

String fileName = MimeUtility.decodeText(bodyPart.getFileName());

// Downloading the file
File f = new File(Constants.getPath() + fileName);
try {
FileOutputStream fos;
fos = new FileOutputStream(f);

byte[] buf = new byte[8*1024];
int bytesRead;

while ((bytesRead = is.read(buf)) != -1) {
fos.write(buf, 0, bytesRead);
}
fos.close();
}

处理此问题的最佳方法是什么?谢谢。

最佳答案

您的应用程序卡住了。解决方案是设置读取超时,如 this question 中所述。 .如果发生超时,将抛出 SocketTimeoutException。

关于java - InputStream - 处理网络变化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14155471/

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