我正在尝试从http url连接下载ZIP文件。如何确认zip文件是否已完全下载。无论如何我可以得到zip文件的结尾。
答案 0 :(得分:0)
当流返回-1
时(如MadConan所述),EOF将会到达。您需要阅读数据,直到
inputStream.read == -1
如下所示的简单示例:
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.net.URL;
import java.net.URLConnection;
public class ZipFileDownloader {
public static void downloadZipFile(String urlPath, String saveTo) {
try {
URLConnection connection = new URL(urlPath).openConnection();
InputStream in = connection.getInputStream();
FileOutputStream out = new FileOutputStream(saveTo + "myFile.zip");
byte[] b = new byte[1024];
int count;
while ((count = in.read(b)) > 0) {
out.write(b, 0, count);
}
out.flush();
out.close();
in.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}