我有一个aspx页面,有一个文本框可以写一个url和一个按钮来显示那个url中的一些图片。我可以将url的源代码加载到HtmlDocument.but我不知道如何从该HTML加载图片源代码,以显示我的页面中的图片。我怎么能这样做?提前致谢
答案 0 :(得分:0)
您需要更清楚地提出问题,以便能够给出具体答案。
HTML是一种标记语言,这意味着只有格式标记,.html文档中没有嵌入图片。只有链接到图像是可以通过某个地址访问的网址。为了获得你需要的图像来获取该网址。
如果您的问题是如何从链接获取实际的html,请参阅following question。但是,既然你说你可以获得html,那么你需要使用Regex或HTML Agility Pack来解析它。
获取图片的代码:
byte[] imageData = DownloadData(Url); //DownloadData function from here
MemoryStream stream = new MemoryStream(imageData);
Image img = Image.FromStream(stream);
stream.Close();
对于方法DownloadData
,您可以使用WebClient
或WebRequest
来获取字节数组中的图像:
WebRequest req = WebRequest.Create("[URL here]");
WebResponse response = req.GetResponse();
Stream stream = response.GetResponseStream();
byte[] b;
using (BinaryReader br = new BinaryReader(stream))
{
b = br.ReadBytes(size);
br.Close();
}
return b;