У меня есть внешняя ссылка с изображением, которое я хочу передать, но я получаю эту ошибку, когда пытаюсь.
ошибка "Форматы URI не поддерживаются".
Я попытался передать: Поток fileStream = новый FileStream ( "http://www.lokeshdhakar.com/projects/lightbox2/images/image-2.jpg", FileMode.Open); byte [] fileContent = новый байт [fileStream.Length];
может ли кто-нибудь осветить это.
Спасибо
FileStream не поддерживает открытые файлы через Интернет.
Попробуйте следующее:
var webClient = new WebClient();
using(var fileStream = webClient.OpenRead("http://www.lokeshdhakar.com/projects/lightbox2/images/image-2.jpg"))
{
byte[] fileContent = new byte[fileStream.Length];
}
Контрактор FileStream, который вы используете, должен быть предоставлен с помощью пути на вашем локальном жестком диске, а не с внешним URL-адресом.
Вероятно, вы ищете:
string url = "http://www.lokeshdhakar.com/projects/lightbox2/images/image-2.jpg";
HttpWebRequest httpWebRequest = (HttpWebRequest)HttpWebRequest.Create(url);
HttpWebResponse httpWebReponse = (HttpWebResponse)httpWebRequest.GetResponse();
Stream stream = httpWebReponse.GetResponseStream();
Вероятно также для этого:
Image pic = Image.FromStream(stream);
MemoryStream ms = new MemoryStream();
pic.Save(ms, System.Drawing.Imaging.ImageFormat.Jpeg);
Byte[] arr = ms.ToArray();