Здравствуйте! Сегодня: Чт, 20 Июн 2019, Ваш IP: 18.215.161.19 Войти через loginza
 
Вход | Регистрация | Забыли пароль?
Мой Kbyte.Ru
> Список форумов Kbyte.Ru - - Web-программирование
+ Создать новую тему Страница: 1
Тема: Как сохранить картинку из http? · +  +  дата добавления: 04.04.2015 / 17:38
Автор темы:
anka_x
anka_x
тем: 8 / ответов: 61 / благодарностей: 0 / репутация: 4
ответов: 61
создал(а) тем: 8


Добрый день.
Есть код (позаимствованный когда-то на kbyte.ru, спасибо), который сохраняет превьюшку картинку из asp:FileUpload.
А как сохранить превьюшку картинки, полученной из url-адреса, например: "http://aleksey.nemiro.ru/upload/images/00021.jpg"? Видимо, надо что-то поменять в строке?
Dim IMG As System.Drawing.Image = System.Drawing.Image.FromStream(frmFileUpload.PostedFile.InputStream)
Технологии: Visual Basic .NET
 
Ответ # 1 # · +  +  дата добавления: 04.04.2015 / 19:05
Автор ответа:
Алексей Немиро
Алексей Немиро
тем: 534 / ответов: 5130 / благодарностей: 325 / репутация: 211
Чашка Kbyte.Ru>>
Url: aleksey.nemiro.ru
Icq: 261779681
Skype: alekseynemiro
ответов: 5130
создал(а) тем: 534


Проще всего при помощи System.Net.WebClient:

'получаем картинку
Dim data() As Byte = New WebClient().DownloadData("http://aleksey.nemiro.ru/upload/images/00021.jpg")
'помещаем в System.IO.MemoryStream
Dim m As New MemoryStream(data)
'передаем из MemoryStream в Image
Dim img As System.Drawing.Image = System.Drawing.Image.FromStream(m)
'далее можно работать с image обычным образом

Или, если нужен файл, то можно использовать метод DownloadFile:
Dim web As New WebClient()
web.DownloadFile("http://aleksey.nemiro.ru/upload/images/00021.jpg", "C:\00021.jpg")

Если будут проблемы с блокировкой скаченных файлов, то придется использовать вариант с DownloadData, получать массив и сохранять в файл, явно закрывая поток.
 
Ответ # 2 # · +  +  дата добавления: 04.04.2015 / 20:25
Автор ответа:
anka_x
anka_x
тем: 8 / ответов: 61 / благодарностей: 0 / репутация: 4
ответов: 61
создал(а) тем: 8


Спасибо большое, Алексей! Буду экпериментировать. )
 
Страница: 1 + Создать новую тему