Возобновить загрузку http-файла на java

URL url = new URL("http://download.thinkbroadband.com/20MB.zip");

URLConnection connection = url.openConnection();
File fileThatExists = new File(path); 
OutputStream output = new FileOutputStream(path, true);
connection.setRequestProperty("Range", "bytes=" + fileThatExists.length() + "-");

connection.connect();

int lenghtOfFile = connection.getContentLength();

InputStream input = new BufferedInputStream(url.openStream());
byte data[] = new byte[1024];

long total = 0;

while ((count = input.read(data)) != -1) {
    total += count;

    output.write(data, 0 , count);
}

в этом коде я пытаюсь возобновить загрузку. Целевой файл составляет 20 МБ. Но когда я прекращаю загрузку на 10 МБ, а затем продолжаю, я получаю файл размером 30 МБ. Кажется, что он продолжает писать в файл, но не может частично загрузить с сервера. Wget -c отлично работает с этим файлом. Как возобновить загрузку файла?

56
задан om-nom-nom 24 November 2012 в 17:56
поделиться