0 / 0 / 0
Регистрация: 24.08.2010
Сообщений: 11

Загрузка файла по http

05.08.2013, 10:51. Показов 7596. Ответов 5
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Итак, проблема: гружу файл по http вот так:

C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
 async void ConnectToServer_Click(object sender, RoutedEventArgs e)
        {
            var serverAddressField = "http://<servername>/download/packages.txt";
            String fileNameField = "Assets\\download\\packages.txt";
            Uri source = new Uri(serverAddressField.Trim());
            String destination = fileNameField.Trim();
           
            try
            {
                
                StorageFile destinationFile = await Windows.Storage.StorageFile.GetFileFromApplicationUriAsync(new Uri(_baseUri, destination));
                BackgroundDownloader downloader = new BackgroundDownloader();
                DownloadOperation download = downloader.CreateDownload(source, destinationFile);
                download.StartAsync();
            }
            catch (Exception ex)
            {
                Download.Content = ex.Message.ToString();
            }
И всё круто конечно. Загружается.
Только вот дело в том,что для загрузки необходимо наличие этого самого файла на диске,куда гружу. То есть у получателя должен быть файл packages.txt,чтобы писалось всё в него.

А можно ли как-то обойтись без предварительного создания файла?
Можно ли,чтобы он как бы копировался с сервера?

Заранее спасибо.
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
05.08.2013, 10:51
Ответы с готовыми решениями:

Загрузка файла по HTTP
Всем доброго времени суток.Прошу вас о помощи! Мне нужно скачать большой файл по HTTP,для этого я использую этот код: WebClient update...

Загрузка файлов по http
Всех с наступающим! Беда у меня случилась. Раньше использовал для загрузки очень большого количества маленьких файлов(все в...

Загрузка картинки на сайт по http
Есть скрипт загрузки картинки(на php) &lt;?php if (isset ($_POST)) { $file = $_FILES; $tmp = $_FILES; $ext =...

5
 Аватар для FrostByte
104 / 104 / 19
Регистрация: 23.05.2013
Сообщений: 185
05.08.2013, 11:04
Попробуйте класс WebClient WebClient.DownloadFile - метод (String, String)
0
0 / 0 / 0
Регистрация: 24.08.2010
Сообщений: 11
05.08.2013, 11:16  [ТС]
Я бы рад,но не могу его использовать. Почему-то его не видно.

System.Net - есть.



В итоге не могу этот класс использовать.

Пробую создать переменную типа WebClient,а на неё ругается компилятор.

Работаю в Visual Studio 2012.
В 2010 всё было проще(

Добавлено через 1 минуту
А DownloadFile и правда работает с локальным файлом:

Метод DownloadFile загружает в локальный файл байтов данные из URI, заданного параметром address.
0
19 / 19 / 5
Регистрация: 16.09.2012
Сообщений: 80
05.08.2013, 11:27
Что-то в путаете. У меня тоже VS 2012. Скорее-всего вы пробуете на чистом проекте, вне методов, в классе, где втокомплит вам не показывает список методов.
Вот как у меня
0
75 / 80 / 51
Регистрация: 22.03.2013
Сообщений: 258
05.08.2013, 11:30
Февраль, На сколько а понял вы не знаете куда сохранять загруженный файл вот некий код может это:

На кнопку скачивания:
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
            Uri uri = new Uri("http://Сайт.ru/файл.rar");//для примера ссылка на файл
            webClient.DownloadFileAsync(uri, "имя файла.расширение");//сохраняем файл под именем
            webClient.DownloadProgressChanged += new System.Net.DownloadProgressChangedEventHandler(webClient_DownloadProgressChanged);
            webClient.DownloadFileCompleted += new System.ComponentModel.AsyncCompletedEventHandler(webClient_DownloadFileCompleted);
 
 void webClient_DownloadProgressChanged(object sender, System.Net.DownloadProgressChangedEventArgs e)
        {
            label1.Text = String.Format("Загружено: {0} Кбайт / {1} Кбайт", e.BytesReceived / 1024, e.TotalBytesToReceive / 1024);//Выводим в лейбл информацию о процессе загрузки
            progressBar1.Value = e.ProgressPercentage;// заполняем 
        }
void webClient_DownloadFileCompleted(object sender, System.ComponentModel.AsyncCompletedEventArgs e)
        {
            MessageBox.Show("Файл скачан!");//по окончанию загрузки выводим сообщение
            progressBar1.Value = 0;//сброс progressBar2  
            label1.Text = "Файл был успешно загружен";// сброс лейбл
        }
Внутри partial class Form1 : Form пишем:

C#
1
System.Net.WebClient webClient = new System.Net.WebClient();//Определяем
1
0 / 0 / 0
Регистрация: 24.08.2010
Сообщений: 11
05.08.2013, 11:45  [ТС]
Цитата Сообщение от rejjin Посмотреть сообщение
Что-то в путаете. У меня тоже VS 2012. Скорее-всего вы пробуете на чистом проекте, вне методов, в классе, где втокомплит вам не показывает список методов.
Вот как у меня
Для примера написал чуть выше. Я в другом методе этого класса пытаюсь использовать
http://ge.tt/7Gj590o/v/0?c
Там мелковато,но ошибка видна и видно,что есть using соответствующий.

Я тоже конечно подозреваю,что что-то делаю не так. Только не могу понять,что же это.

Добавлено через 2 минуты
Цитата Сообщение от ProgerHack Посмотреть сообщение
Февраль, На сколько а понял вы не знаете куда сохранять загруженный файл вот некий код может это:
Да нет,я знаю,кда сохранять. Проблема в том,что метод,который я использую пишет в ФАЙЛ. То есть файл должен быть создан,иначе он выдаёт ошибку.
А мне-то надо,чтобы файл скачивался просто. То есть копировался и вставлялся. А этот метод только писать в УЖЕ существующий файл может.
вот такая беда.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
05.08.2013, 11:45
Помогаю со студенческими работами здесь

Загрузка XML по HTTP
Есть ли какие нибудь средства в .NET для осуществления сабжа ? Что нибудь аналогичное MSXML2.XMLHTTP. На данный момент имеем скрипт...

Загрузка файла на сервер по протоколу http
Товарищи программисты помогите пожалуйста с проблемой загрузки на файлообменник по протоколу http Проблема заключается в локальной...

Загрузка файла с HTTP сервера определение статуса загрузки
Всем доброго времени суток. Мне необходимо чтобы программа скачивала rar файл с сервера и распоковывала его в определенную папку для...

Загрузка файла по протоколу HTTP
Всем доброго дня/ночи/утра. Понадобилось загрузить файл средствами шарпа. Уже неделю мучаюсь, но ни как не могу понять реализацию. Были...

Progressbar и загрузка файла по HTTP
Доброго времени суток,уважаемые форумчане. Как реализовать скачивание файла(архив,10-50 мегабайт) с отображением процесса загрузки в...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Опции темы

Новые блоги и статьи
Модель заражения группы наркоманов
alhaos 17.04.2026
Условия задачи сформулированы тут Суть: - Группа наркоманов из 10 человек. - Только один инфицирован ВИЧ. - Колются одной иглой. - Колются раз в день. - Колются последовательно через. . .
Мысли в слух. Про "навсегда".
kumehtar 16.04.2026
Подумалось тут, что наверное очень глупо использовать во всяких своих установках понятие "навсегда". Это очень сильное понятие, и я только начинаю понимать край его смысла, не смотря на то что давно. . .
My Business CRM
MaGz GoLd 16.04.2026
Всем привет, недавно возникла потребность создать CRM, для личных нужд. Собственно программа предоставляет из себя базу данных клиентов, в которой можно фиксировать звонки, стадии сделки, а также. . .
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . . а удачный момент так и не приходит.
Фиксация колонок в отчете СКД
Maks 14.04.2026
Фиксация колонок в СКД отчета типа Таблица. Задача: зафиксировать три левых колонки в отчете. Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка) / / . . .
Настройки VS Code
Loafer 13.04.2026
{ "cmake. configureOnOpen": false, "diffEditor. ignoreTrimWhitespace": true, "editor. guides. bracketPairs": "active", "extensions. ignoreRecommendations": true, . . .
Оптимизация кода на разграничение прав доступа к элементам формы
Maks 13.04.2026
Алгоритм из решения ниже реализован на нетиповом документе, разработанного в конфигурации КА2. Задачи, как таковой, поставлено не было, проделанное ниже исключительно моя инициатива. Было так:. . .
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: реализовать контроль корректности заполнения дат назначения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru