VB.net基础:如何获得并显示网上图片

在VB.net中,显示图片很简单:

PictureBox1.Image=Image.FromFile(FileName)

但是这种办法不能用于显示 Internet 上的图片,因为 Image.FromFile 不支持 URI 格式。那么怎么办呢?

其实 . net 为我们准备了一套很方便的方法。在. net 中,网上的资源(图片,动画,声音,网页等等)是通过 System.Net.WebRequest 和 System.Net.WebResponse 两个类来得到的。简单的说,得到 Internet 上的图片的步骤是这样的(以 http://images.sohu.com/logo1.gif 为例 ):

1. 先通过URI建立一个 WebRequest (请参考 WebRequest 构造函数):
Dim wr As WebRequest = WebRequest.Create(" http://images.sohu.com/logo1.gif ")

2. 然后通过其 GetResponse 方法得到一个 WebResponse :
Dim res As WebResponse= wr.GetResponse

3. 通过 WebResponse.GetResponseStream 方法得到的流来创建 Bitmap :
Dim bmp As New Bitmap(res.GetResponseStream)

4. 这样,就能显示图片了:
PictureBox1.Image=bmp

怎么样,不复杂吧。有两点要注意,一是要把这段代码用try包起来,因为服务器返回404等错误的时候会引发异常;二是最好把这个过程放到单独的线程里,以免程序界面没有响应。

System.Net.WebRequest 和 System.Net.WebResponse 不仅可以用于获得Internet图片,还可以用于获得其他资源。如果你想多了解,就去看看MSDN等其他资料吧。

Published At
Categories with Web编程
Tagged with
comments powered by Disqus