Форум программистов, компьютерный форум, киберфорум
mutagen
Войти
Регистрация
Восстановить пароль
все вопросы по Java которые задают более 3х раз на форуме
Оценить эту запись

Докачка файла из сети

Запись от mutagen размещена 04.02.2014 в 19:44
Обновил(-а) mutagen 04.02.2014 в 20:27

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
private void downloadFile(URL url, File file) {
        HttpURLConnection connection = null;
        try {
            connection = (HttpURLConnection) url.openConnection();
        } catch (IOException e) {
            log.error(e);
        }
 
        if (connection != null) {
            int downloaded = 0;
            if (file.exists()) {
                downloaded = (int) file.length();
                connection.setRequestProperty("Range",
                        "bytes=" + (file.length()) + "-");
            }
            connection.setDoInput(true);
            connection.setDoOutput(true);
            BufferedInputStream in = null;
            BufferedOutputStream bout = null;
            FileOutputStream fos = null;
            try {
                in = new BufferedInputStream(connection.getInputStream());
            } catch (IOException e) {
                log.error(e);
            }
            try {
                fos = (downloaded == 0) ? new FileOutputStream(file)
                        : new FileOutputStream(file, true);
            } catch (FileNotFoundException e) {
                log.error(e);
            }
            int fileLength = connection.getContentLength();
            bout = new BufferedOutputStream(fos, 1024);
            byte[] data = new byte[1024];
            int x = 0;
            try {
                while ((x = in.read(data, 0, 1024)) >= 0) {
                    bout.write(data, 0, x);
                    downloaded += x;
                }
            } catch (IOException e) {
                log.error(e);
            } finally {
                if (bout != null)
                    try {
                        bout.close();
 
                    } catch (IOException e) {
                        log.error(e);
                    }
                if (fos != null)
                    try {
                        fos.close();
                    } catch (IOException e) {
                        log.error(e);
                    }
                if (in != null)
                    try {
                        in.close();
                    } catch (IOException e) {
                        log.error(e);
                    }
            }
        }
Размещено в Без категории
Показов 3925 Комментарии 0
Всего комментариев 0
Комментарии
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2022, CyberForum.ru