powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / Размер файла из урла и даунлоудинг этого файла?
4 сообщений из 4, страница 1 из 1
Размер файла из урла и даунлоудинг этого файла?
    #32814533
rbt
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я только учусь, поэтому не ругайте если что не так...

Вопроса собственно 2-ва:

Как узнать размер файла полученного из URL?
И правильно ли я качаю файл из УРЛа? может вы знаете более удобнуй способ.

например:
Код: plaintext
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.
 int  c;
String v_url,v_local_pth;
v_url = "http://my.domain.ru:8002/dir/test.exe";
v_local_pth = "C:/TEMP/test_new.exe";

 try  
{
URL w_url =  new  URL(v_url);

// здесь хотелось бы знать сколько этот файл весит


//а качаю я его используя BufferedReader и BufferedWriter:

 
In =  new  BufferedReader( new  InputStreamReader(w_url.openStream()));
Out =  new  BufferedWriter( new  FileWriter(v_local_pth));

c =  0 ;
       while  (c != - 1 )
            {
             c = In.read();  
             Out.write(c);
             i++;
            }

 catch  {...}
}



заранее,
tnx!
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
Размер файла из урла и даунлоудинг этого файла?
    #34486883
Saschko
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Пытаюсь определить размер файла по его URL, используя

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
	 private   int  getVersionFileSize(String url) {
		 int  fileSize =  0 ;
		
		URLConnection conn;
		 try {
			conn =  new  URL(url).openConnection();
			fileSize = conn.getContentLength();
			conn.getInputStream().close();
		} catch (MalformedURLException e){
		} catch (IOException e){}
		
		 return  fileSize;
	}

Работает, но для некоторых URL (нестатических файлов - xxx.com/get_file?id=1000), выдается неправильный результат. Очевидно, что проблема в сервере - возвращает неверный заголовок. Но тем не менее, в FlashGet, скажем, размер файла по этому URL определяется верно, и до полной закачки файла.

Может что то не так делаю?
Заранее спасибо.
...
Рейтинг: 0 / 0
Размер файла из урла и даунлоудинг этого файла?
    #34488167
М.Голованов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Все правильно делаете. Но заголовок "Content-Length" не обязателен по спецификации HTTP - серверы должны (SHOULD), но не обязаны (не MUST) посылать его. В частности, серверы могут не послать этот заголовок или послать "Content-Length:-1", если файл не статический.

Так что увы. Если сервер видит, что URL отображается на файл на диске и он должен этот файл передать "как есть" без обработки, он сообщит размер файла. Если URL на такой файл не отображается или обработчик файла внутри сервера не позаботился о передаче этого заголовка, его не будет или будет заголовок "Content-Length:-1". Короче, если у Вас fileSize==-1, то сервер не смог или не захотел определить размер контента.
...
Рейтинг: 0 / 0
Размер файла из урла и даунлоудинг этого файла?
    #34489958
Фотография Сашко
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Спасибо!

Проблема уже решилась. Нужно было в случае HttpConnection устанавливать еще заголовок User-Agent, и все заработало.
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / Java [игнор отключен] [закрыт для гостей] / Размер файла из урла и даунлоудинг этого файла?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]