我可以通过webclient下载图片并在图片框上成功绘画。但我的问题是如何避免使用缓存系统从网上重新下载相同的图像。但我不想把它保存到我的牧群盘中。
我的代码是:
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim wc As New System.Net.WebClient
Dim ImageInBytes() As Byte = wc.DownloadData(TextBox1.Text)
Dim ImageStream As New IO.MemoryStream(ImageInBytes)
PictureBox1.Image = New System.Drawing.Bitmap(ImageStream)
PictureBox1.Refresh()
End Sub
答案 0 :(得分:0)
我相信WebClient不支持使用缓存。
您可以尝试检查图像大小,如果有不同的下载,请使用您已下载的图像。
此代码将获取图像大小,而不下载它:
Dim wc As System.Net.WebClient = New System.Net.WebClient
wc.OpenRead("http://example.com/ex.png")
Dim bytes_total As Int64 = Convert.ToInt64(wc.ResponseHeaders("Content-Length"))