URLConnection | openConnection() Returns a |
URLConnection | openConnection(Proxy proxy) Same as |
InputStream | openStream() <最常用> Opens a connection to this |
其实底层的实现,openStream()方法的实现也是调用了 openConnection生成一个 URLConnection 对象,然后再通过这个对象调用的 getInputStream()方法的,《Java网络编程》说“如果希望与服务器直接通信,应当使用这个方法”。这样显式生成了·URLConnection对象的好处应该是可以调用这个对象的一些方法,以及获取它的一些字段吧。因此,当你确定 URL 指向的绝对是文本且编码格式为ASCII时,使用 openStream()方法比较方便,除此之外,就用 openConnection()方法吧。
下面是url.openStream()的源码:
public final InputStream openStream() throws java.io.IOException {
return openConnection().getInputStream();
}
他也是先通过openConnection()方法获取URLConnection对象,然后调用getInputStream()方法。