Форум программистов, компьютерный форум, киберфорум
Visual Basic .NET
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.55/11: Рейтинг темы: голосов - 11, средняя оценка - 4.55
 Аватар для Vinemax
149 / 117 / 10
Регистрация: 12.09.2011
Сообщений: 785

загрузка (download) файла в массив байт

06.03.2013, 20:27. Показов 2082. Ответов 3
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Привет всем!

Подскажите, пожалуйста, каким образом по прямому HTTP-запросу загрузить файл из Интернета не на диск, а в массив байт или MemoryStream ?

Т.е. загружаю так на диск:

VB.NET
1
My.Computer.Network.DownloadFile(url, SomeFile)
...а надо тоже самое, но чтобы прямо в массив или поток.


Спасибо!

Добавлено через 1 час 15 минут
вроде, решил... кому интересно, вот, что мне методом проб и ошибок удалось наваять:

VB.NET
1
2
3
4
5
6
7
Dim wRequest As WebRequest = WebRequest.Create(url)
Dim wResponse As WebResponse = wRequest.GetResponse
Dim stream As New StreamReader(wResponse.GetResponseStream, Encoding.Default)
 
Dim x() As Byte = Encoding.Default.GetBytes(stream.ReadToEnd)
 
' где x - полученный с сервера файл в виде массива байт
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
06.03.2013, 20:27
Ответы с готовыми решениями:

ID3DXFont - загрузка шрифта из файла или массива байт
Как загрузить ID3DXFont из файла или, что еще лучше, прямо из массива байт (хранящегося в памяти)? в гугле ничего не нашел.

Программа, которая считывает 8 байт из созданного файла MyFile.dat, начиная с 7-го байта, относительно начала, и 10 байт от конца файла
Привет, вот задание собсно Напишите программу, которая считывает 8 байт из созданного ранее файла MyFile.dat, начиная с 7-го байта,...

Загрузка из download.php
Я делая парсер торрент трекера. Мне нужно скачать torrent файл из этой строки <div class="full_torrent3"><a...

3
25 / 25 / 3
Регистрация: 10.06.2009
Сообщений: 134
06.03.2013, 20:42
Vinemax, а как при достижении определенного размера массива сбрасывать данные в один файл, да так чтобы не прерывать загрузку?
Контролировать размер из другого потока что ли?
0
 Аватар для Vinemax
149 / 117 / 10
Регистрация: 12.09.2011
Сообщений: 785
06.03.2013, 20:54  [ТС]
Nickopoll, вообще последнюю строку моего кода можно перефразировать так:

VB.NET
1
2
Dim s As String = stream.ReadToEnd
Dim x() As Byte = Encoding.Default.GetBytes(s)
исходя из этого, можно читать циклом по одному байту (символу) посредством stream.Read, ну и уже контролировать когда и при каком заполнении писать в файл

надо погуглить или в MSDN поискать работу с потоками... я сам плохо с этим знаком
0
25 / 25 / 3
Регистрация: 10.06.2009
Сообщений: 134
06.03.2013, 21:37
А я плохо знаком с потоковым чтением/записью, потому и вопрос: stream.ReadToEnd читает входящий поток до конца, так? В этот входящий поток "льется" загружаемый файл кусками, так? Если все так, то код в однопоточном приложении после Dim s As String = stream.ReadToEnd будет выполнен только после загрузки файла полностью. Тогда сбрасывать частично его нету смысла выходит.

Добавлено через 7 минут
А если юзать stream.Read(), сохранится ли конект с файлом? То есть, что, если чтение из потока будет происходить быстрее поступления туда инфы?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
06.03.2013, 21:37
Помогаю со студенческими работами здесь

Считать байты файла в массив типа (байт)
Прошу если не сделать, то хотя бы скинуть примеры, либо подтолкнуть в том, чтоб разобраться, очень нужно, пожалуйста. На языке C#...

Чтение bmp файла в байт массив и обратно
Проблема состоит в том что я считываю в байт масив к примеру текстовый файл и потом востанавливаю все работает, но когда я считываю bmp...

Считывание из входного файла байт с N1 по N2 и с N3 по N4 и запись этих байт в выходной файл
Здравствуйте!Помогите пожалуйста написать программу, которая бы считывала из входного файла байты с N1 по N2 и с N3 по N4 и записывала эти...

Получить указатель на массив байт файла открытого с помощью CreateFile
Как получить указатель на массив байт файла открытого на чтение с помощью CreateFile, т.е. после открытия файла мне надо как то получить...

Как вывести 10 байт после определенных байт из файла
Здравствуйте. Есть к примеру файл с расширением *.bin, подскажите как реализовать вывод на экран 12 байт после определенных найденных в...


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
Функция установки текстового статуса в реквизите формы документа
Maks 01.04.2026
Алгоритм из решения ниже реализован на нетиповом документе "ВыдачаОборудованияНаСпецтехнику" разработанного в конфигурации КА2, в дополнении к предыдущему решению. На форме документа создается. . .
К слову об оптимизации
kumehtar 01.04.2026
Вспоминаю начало 2000-х, университет, когда я писал на Delphi. Тогда среди программистов на форумах активно обсуждали аккуратную работу с памятью: нужно было следить за переменными, вовремя. . .
Идея фильтра интернета (сервер = слой+фильтр).
Hrethgir 31.03.2026
Суть идеи заключается в том, чтобы запустить свой сервер, о чём я если честно мечтал давно и давно приобрёл книгу как это сделать. Но не было причин его запускать. Очумелые учёные напечатали на. . .
Модель здравосоХранения 6. ESG-повестка и устойчивое развитие; углублённый анализ кадрового бренда
anaschu 31.03.2026
В прикрепленном документе раздумья о том, как можно поменять модель в будущем
10 пpимет, которые всегда сбываются
Maks 31.03.2026
1. Чтобы, наконец, пришла маршрутка, надо закурить. Если сигарета последняя, маршрутка придет еще до второй затяжки даже вопреки расписанию. 2. Нaдоели зима и снег? Не надо переезжать. Достаточно. . .
Перемещение выделенных строк ТЧ из одного документа в другой
Maks 31.03.2026
Реализация из решения ниже выполнена на примере нетипового документа "ВыдачаОборудованияНаСпецтехнику" с единственной табличной частью "ОборудованиеИКомплектующие" разработанного в конфигурации КА2. . . .
Functional First Web Framework Suave
DevAlt 30.03.2026
Sauve. IO Апнулись до NET10. Из зависимостей один пакет, работает одинаково хорошо как в режиме проекта так и в интерактивном режиме. из сложностей - чисто функциональный подход. Решил. . .
Автоматическое создание документа при проведении другого документа
Maks 29.03.2026
Реализация из решения ниже выполнена на нетиповых документах, разработанных в конфигурации КА2. Есть нетиповой документ "ЗаявкаНаРемонтСпецтехники" и нетиповой документ "ПланированиеСпецтехники". В. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru