С Новым годом! Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.83/29: Рейтинг темы: голосов - 29, средняя оценка - 4.83
 Аватар для login10
0 / 0 / 0
Регистрация: 10.11.2014
Сообщений: 44

Как скачать картинку и сразу вставить в Bitmap?

03.02.2016, 21:46. Показов 6241. Ответов 8
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здраствуйте.
Как вы уже поняли из заголовка нужно скачать как то картинку из сети, и сразу вставить ее в Bitmap не загружая на диск компьютера.

C#
1
Bitmap img = new Bitmap("erctykerycke.gif");
Скачиваю картинки таким образом:

C#
1
2
string url = "http://site.ru/erctykerycke.gif";
(new WebClient()).DownloadFile(url, "erctykerycke.gif");
Он скачивает изображение и сохраняет его на диск. Я могу конечно потом сразу открыть это изображение с диска при помощи "Bitmap-кода" который представлен выше... но.... Как кто то непомню кто сказал "Это все равно что лечить гланды через анус". Неочеь удобно.
Может код скачивания изображения другой предложите, ну вообщем помогите решить вопрос.
Спасибо.

Добавлено через 4 часа 35 минут
Блин, некто незнает
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
03.02.2016, 21:46
Ответы с готовыми решениями:

HTML - Надо: вставить картинку в картинку, в эту картинку, ссылку в картинку
Вот схема моего сайта. http://s020.***********/i716/1404/8c/254516feacb3.jpg У меня пока что на этой странице есть: 1. Элемент Фон -...

Как загрузить картинку в Bitmap?
Объявил Битмап, но уже в дальнейшем использовании не могу загрузить в него другой файл, только при объявлении получается. Dim Vid1...

Как в html вставить 2-картинку на 1-картинку???
Если 1-картинка не должна быть фоновая. пожалуйста поподробней.

8
TheGreatCornholio
 Аватар для Woldemar89
1255 / 733 / 285
Регистрация: 30.07.2015
Сообщений: 2,408
03.02.2016, 21:52
Лучший ответ Сообщение было отмечено OwenGlendower как решение

Решение

Цитата Сообщение от login10 Посмотреть сообщение
Блин, некто незнает
Да за такое время уже и найти и изобрести можно.
C#
1
2
3
4
5
6
7
8
9
10
Bitmap LoadImageFromWeb(string adr){
     
          using (WebClient client = new WebClient()) {                  
          
          byte[] data = client.DownloadData(adr);                        
        
          using (MemoryStream ms = new MemoryStream(data))          
                 return new Bitmap(ms);
          }
}
1
Эксперт .NET
 Аватар для Даценд
5878 / 4755 / 2939
Регистрация: 20.04.2015
Сообщений: 8,361
03.02.2016, 22:14
C#
1
2
3
string url = "http://site.ru/erctykerycke.gif";
byte[] bArr = (new WebClient()).DownloadData(url);
pictureBox1.Image = new Bitmap(new MemoryStream(bArr));
Добавлено через 7 минут
или даже:
C#
1
Bitmap bmp = new Bitmap((new WebClient()).OpenRead(url));
2
 Аватар для login10
0 / 0 / 0
Регистрация: 10.11.2014
Сообщений: 44
04.02.2016, 20:42  [ТС]
Woldemar89, Я и несидел на месте, и кодил кое что другое..
Твой вариант кода заставил меня понервничать пока разобрлся, спасибо.

Даценд, Опять меня выручаешь Дацент.

Спасибо всем, варианты рабочие.
0
TheGreatCornholio
 Аватар для Woldemar89
1255 / 733 / 285
Регистрация: 30.07.2015
Сообщений: 2,408
04.02.2016, 21:12
Цитата Сообщение от login10 Посмотреть сообщение
Твой вариант кода заставил меня понервничать пока разобрлся
Чего тут нервничать-то?
Каждый IDisposable объект нужно как можно быстрее уничтожить, если он не используется.
Не используя using - за 100 запросов будет у тебя в памяти валяться 100 WebClient'ов
и 100 MemoryStream'ов, которые закрывать, или опять же - уничтожать надо.
И вроде как также PictureBox.Image нужно завалить и null присвоить перед каждой заменой.

Никаких нервов, просто memory management
0
 Аватар для login10
0 / 0 / 0
Регистрация: 10.11.2014
Сообщений: 44
05.02.2016, 21:15  [ТС]
Woldemar89, да, читал об этом, что память нужно как можно быстрее освобождат.

Добавлено через 1 час 6 минут
Woldemar89, послушай а вот если освобождать таким образом... Нормально?
C#
1
2
3
4
5
WebClient client = new WebClient();
// ...
// ...
// ...
client = null;
0
TheGreatCornholio
 Аватар для Woldemar89
1255 / 733 / 285
Регистрация: 30.07.2015
Сообщений: 2,408
05.02.2016, 21:39
Цитата Сообщение от login10 Посмотреть сообщение
Нормально?
Не выдумывай
Пользуйся либо using, либо Dispose(), для всех IDisposable, или тебе религия не позволяет?
0
 Аватар для login10
0 / 0 / 0
Регистрация: 10.11.2014
Сообщений: 44
06.02.2016, 01:28  [ТС]
Woldemar89, извени но IDisposable это кто такие, если в кратце?
А using слишком ветвит код, ну раз ты советуешь значит прислушаюсь
0
TheGreatCornholio
 Аватар для Woldemar89
1255 / 733 / 285
Регистрация: 30.07.2015
Сообщений: 2,408
06.02.2016, 10:56
Цитата Сообщение от login10 Посмотреть сообщение
извени но IDisposable это кто такие, если в кратце?
Если всерьез интересуешься программированием - забудь о "вкратце", на крайний случай отложи прочтение
https://msdn.microsoft.com/ru-... .110).aspx
https://habrahabr.ru/post/89720/
http://professorweb.ru/my/csha... 3/13_6.php
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
06.02.2016, 10:56
Помогаю со студенческими работами здесь

Как отобразить картинку из таблицы Access (Ole BitMap)
При написании программы на Delphi возникла проблема, как вывести на Image картинку из таблицы Access (OLE BitMap). Заранее благодарен.

Как удалить картинку, загружаемую как Bitmap, но более не использующуюся
Bitmap bitmap = new Bitmap(mypath); im2.Image = bitmap; im2.Visible = true; так...

Как добавить картинку из access в dbimage (Bitmap image is not valid)
Всем привет. Создал БД access с двумя полями № и фото. У фото тип ОЛЕ. В форме делфи DataSource, ADOConnection, ADOTable и DBImage....

как правильно вставить рисунок bitmap в канву?
как правильно вставить рисунок bitmap в канву? когда вставляю у меня получается черный прямоугольник по размеру картинки

Как из Excel скопировать таблицу и вставить её как bitmap (картинка) в Outlook например в 10ой строке
Добрый день! Подскажите пожалуйста: как из Excel скопировать таблицу и вставить её как bitmap (картинка) в Outlook в заданной строке...


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

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Новые блоги и статьи
Учёным и волонтёрам проекта «Einstein@home» удалось обнаружить четыре гамма-лучевых пульсара в джете Млечного Пути
Programma_Boinc 01.01.2026
Учёным и волонтёрам проекта «Einstein@home» удалось обнаружить четыре гамма-лучевых пульсара в джете Млечного Пути Сочетание глобально распределённой вычислительной мощности и инновационных. . .
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост. Налог на собак: https:/ / **********/ gallery/ V06K53e Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf Пост отсюда. . .
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop? Ниже её машинный перевод. После долгих разбирательств я наконец-то вернула себе. . .
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод Нашел на реддите интересную статью под названием The Thinkpad X220 Tablet is the best budget school laptop period . Ниже её машинный перевод. Thinkpad X220 Tablet —. . .
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru