几天前,我陷入一个严重问题,给我一个头痛:
所有瓦 Java基工具(Eclipse、Maven、AndrewSDK装载机......)都存在下载某些档案的问题:下载只是随意停留。
我已在Superuser上描述了我的问题,但没有人能够帮助我解决我的问题。 因此,我开始做一些测试,最后在问题结束时采用样本代码。
令人感兴趣的部分是,缓冲区的规模对这个问题的影响不大。 如果我把缓冲面积减少到1024,则大多数情况下的下载都是完整的。
该法典是否只给我的视窗系统造成问题?
阐明: 我不想与 Java一道制定下载方案,因此,确定样本代码无助于我,而守则只是证明问题。
public static void main(String[] args) {
try {
URL url = new URL("http://mirror.netcologne.de/maven2/com/google/android/android/2.3.3/android-2.3.3.jar");
HttpURLConnection conn = (HttpURLConnection) url.openConnection();
InputStream in = conn.getInputStream();
byte[] buffer = new byte[10485760]; // 10MiB
long read = 0;
while (true) {
int bytes = in.read(buffer, 0, buffer.length);
if (bytes < 0)
break;
read += bytes;
System.out.println("Bytes read: " + read);
}
conn.disconnect();
System.out.println("Finished");
} catch (Exception e) {
e.printStackTrace();
}
}