Чтобы загрузить изображение по URL-адресу в C#, можно использовать несколько методов. Вот несколько примеров:
Метод 1: использование класса WebClient
using System.Net;
string imageUrl = "http://example.com/image.jpg";
string savePath = "C:\\path\\to\\save\\image.jpg";
using (WebClient client = new WebClient())
{
client.DownloadFile(imageUrl, savePath);
}
Метод 2: использование класса HttpClient (доступно в.NET Framework 4.5 и более поздних версиях)
using System;
using System.IO;
using System.Net.Http;
using System.Threading.Tasks;
string imageUrl = "http://example.com/image.jpg";
string savePath = "C:\\path\\to\\save\\image.jpg";
using (HttpClient client = new HttpClient())
{
HttpResponseMessage response = await client.GetAsync(imageUrl);
response.EnsureSuccessStatusCode();
using (Stream inputStream = await response.Content.ReadAsStreamAsync())
using (Stream outputStream = File.OpenWrite(savePath))
{
await inputStream.CopyToAsync(outputStream);
}
}
Метод 3: использование метода WebClient.DownloadData
using System.Net;
string imageUrl = "http://example.com/image.jpg";
string savePath = "C:\\path\\to\\save\\image.jpg";
using (WebClient client = new WebClient())
{
byte[] imageData = client.DownloadData(imageUrl);
File.WriteAllBytes(savePath, imageData);
}
Метод 4. Использование объектов HttpRequest и HttpResponse
using System;
using System.IO;
using System.Net;
string imageUrl = "http://example.com/image.jpg";
string savePath = "C:\\path\\to\\save\\image.jpg";
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(imageUrl);
HttpWebResponse response = (HttpWebResponse)request.GetResponse();
using (Stream inputStream = response.GetResponseStream())
using (Stream outputStream = File.OpenWrite(savePath))
{
byte[] buffer = new byte[4096];
int bytesRead;
while ((bytesRead = inputStream.Read(buffer, 0, buffer.Length)) > 0)
{
outputStream.Write(buffer, 0, bytesRead);
}
}
response.Close();
Это всего лишь несколько примеров того, как можно загрузить изображение по URL-адресу в C#. Не забывайте правильно обрабатывать исключения и убедитесь, что у вас есть необходимые разрешения для доступа к сети и записи в файловую систему.