JAVA - Resume/Pause https连接下载

JAVA - Resume/Pause https connection download

我有这样的代码

    public void downloadZip(String URL, String fileName) {

    try {
        java.net.URL url = new URL(URL);
        URLConnection conn = url.openConnection();
        InputStream in = conn.getInputStream();
        FileOutputStream out = new FileOutputStream(save + "/" + fileName);
        byte[] b = new byte[4096];
        int count;
        while ((count = in.read(b)) >= 0) {
            out.write(b, 0, count);
        }
        out.flush(); out.close(); in.close();

    } catch (IOException e) {
        e.printStackTrace();
    }
}

如何重写它才能continue/stop加载?

您需要使用单独的线程使用 SwingUtilities。如果你想停止,你可以在 GUI 线程中设置一个标志。如果想继续,可以重新打开URL,使用InputStream的skip方法从离开的地方重新开始。要暂停,恢复你可以使用信号。参见 http://tutorials.jenkov.com/java-concurrency/thread-signaling.html

您需要了解 multi-threading。