Модераторы: Partizan, gambit
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> докачка файлов с инета 
:(
    Опции темы
Skalik
Дата 14.1.2009, 00:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 131
Регистрация: 20.3.2008
Где: Харьков

Репутация: нет
Всего: нет



Качаю файл с инета, код:
Код

using (WebClient wcDownload = new WebClient())
            {
                try
                {
                    webRequest = (HttpWebRequest)WebRequest.Create(url);

                    webRequest.Credentials = CredentialCache.DefaultCredentials;

                    webResponse = (HttpWebResponse)webRequest.GetResponse();

                    fileSize = webResponse.ContentLength;

                    strResponse = wcDownload.OpenRead(url);

                    strLocal = new FileStream(fileName, FileMode.OpenOrCreate, FileAccess.Write, FileShare.None);

                    int bytesSize = 0;

                    byte[] downBuffer = new byte[2048];


                    while ((bytesSize = strResponse.Read(downBuffer, 0, downBuffer.Length)) > 0)
                    {
                        strLocal.Write(downBuffer, 0, bytesSize);
                      
                       
                    }
                    
                }
                catch (Exception ex)
                {
                   System.Windows.Forms.MessageBox.Show(ex.Message);
                }
                finally
                {
                   
                    strResponse.Close();
                    strLocal.Close();
                    webResponse.Close();
                }
            }


Хочу реализовать докачку файла,желателно несколькими потоками по частям. Возможно ли это через WebClient?
Предложите свои варианты...
PM MAIL ICQ   Вверх
QryStaL
Дата 14.1.2009, 10:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Intellectual feast
**


Профиль
Группа: Участник
Сообщений: 914
Регистрация: 30.11.2005

Репутация: 14
Всего: 32



Skalik, зачем вам WebClient, если уже используете HttpWebRequest и HttpWebResponse ? Чтобы скачать файл, используйте WebResponse.GetResponseStream(), для докачки будет полезен метод HttpWebRequest.AddRange()

Это сообщение отредактировал(а) QryStaL - 14.1.2009, 10:35


--------------------
I don't need a reason being who I am...
PM MAIL ICQ   Вверх
Skalik
Дата 18.1.2009, 16:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 131
Регистрация: 20.3.2008
Где: Харьков

Репутация: нет
Всего: нет



Попробовал HttpWebRequest.AddRange(), работает,но только для небольших файлов. У него в параметрах int offset,int to
Как организовать докачку больших файлов?

PM MAIL ICQ   Вверх
QryStaL
Дата 18.1.2009, 17:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Intellectual feast
**


Профиль
Группа: Участник
Сообщений: 914
Регистрация: 30.11.2005

Репутация: 14
Всего: 32





--------------------
I don't need a reason being who I am...
PM MAIL ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
mr.DUDA
THandle

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.
Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :)
Так же не забывайте отмечать свой вопрос решенным, если он таковым является :)


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, THandle.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Общие вопросы по .NET и C# | Следующая тема »


 




[ Время генерации скрипта: 0.0633 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.