java.net.URL中定义了URL相关的操作,其主要利用的是openStream();方法来返回一个InputStream,然后可以使用InputStreamReader和BufferedReader来封装从而获取网上已发布的资源内容。具体使用如下:
package com.dylan.java.net;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.net.MalformedURLException;
import java.net.URL;
public class TestURL {
public static void main(String[] args) {
try {
// 创建一个对象
URL url = new URL("http://www.baidu.com/");
// URL对象的openStream() 方法返回的是一个InputStream输入流
InputStream is = url.openStream();
/*
* 读取输入流并且转化成为BufferedReader, 利用BufferedReader的rendLine()方法读出内容
*/
InputStreamReader isr = new InputStreamReader(is);
BufferedReader bf = new BufferedReader(isr);
String str;
while ((str = bf.readLine()) != null) {
System.out.println(str);
}
/*这种写法不能读出全部网页内容,第一行没有打印出来,只打印出来了中间部分 ?
* while (bf.readLine() != null) {
* System.out.println(bf.readLine()); }
*/
} catch (MalformedURLException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
}