如何解决用Java下载文件和常见错误
|| 我编写了一个简单的Java applet下载器。在一些测试中,我发现下载文件的方式甚至还不及例如Firefox的实现方式。 我的代码:InputStream is = null;
FileOutputStream os = null;
os = new FileOutputStream(...);
URL u = new URL(...);
URLConnection uc = u.openConnection();
is = uc.getInputStream();
final byte[] buf = new byte[1024];
for(int count = is.read(buf);count != -1;count = is.read(buf)) {
os.write(buf,count);
}
有时我的小程序运行良好,有时会发生意外情况。例如。在下载小程序的过程中,有时会抛出IO异常或只是失去连接一段时间,而无法返回到当前下载并完成它。
我知道对于单个没有经验的Java程序员来说,真正的高级方法太复杂了,但是也许您知道一些可以最小化出现这些问题的风险的技术。
解决方法
因此,您想恢复下载。
如果从URL读取时出现IOException,则连接存在问题。
有时候是这样的。现在,您必须记下已经下载了多少文件,并打开一个从此处开始的新连接。
为此,请在第二个上使用
setRequestProperty()
,并为\“我只需要以... \开头的资源范围”发送正确的标题字段。请参阅HTTP 1.1规范中的14.35.2范围检索请求。不过,您应该检查响应中的标题字段,以查看是否确实返回了范围。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。