URLクラスを使用してWebファイルをダウンロードし、Webファイルのサイズを統計します.

1694 ワード

まずURLConnectionクラスを紹介します.
URLクラスのOpenConnection()メソッドでは、URL参照のリソースの読み取りと書き込みに使用できるURLConnectionオブジェクトを生成できます.ネットワークプログラミングの仕事の中で、JAVAのURLConnectionは1つのよく使うクラスで、それは1つのとても便利なインタフェースを提供して、接続するホストのURLアドレスを提供するのでさえすれば、URLクラスのopenConnection()方法を使って1つのHttpURLConnectionのオブジェクトを得ることができて、その中のHttpURLConnectionクラスはURLConnectionクラスのサブクラスで、それからこの基礎の上でHTTPの内容を分析して、関連するタスクを完了します.この方式では,利用者は下位層の実装の詳細を考慮する必要がなく,煩わしいSocketクラスのコード記述を回避するため,比較的よく用いられる.
URLConnectionの一般的な方法
String getHeaderField(String name)
指定したヘッダフィールドの値を返します.
InputStream getInputStream()
ここで開いている接続で読み込まれた入力ストリームを返します.
String getContentEncoding()
content-encodingヘッダフィールドの値を返します.
int getContentLength()
content-lengthヘッダフィールドの値を返します.
String getContentType()
content-typeヘッダフィールドの値を返します.
long getDate()
dateヘッダフィールドの値を返します.
public class Inetaddress {

	public static void main(String[] args) {

try {
			System.out
					.println("  URL         http://www.szu.edu.cn,              ");
			URL url = new URL("http://www.szu.edu.cn");
			InputStream in = url.openStream();
			FileOutputStream fout = new FileOutputStream(new File(
					"C:/Users/97617/workspace/InetAddress/src/com/imooc",
					"szu.html"));
			int a = 0;
			while (a > -1) {
				a = in.read();
				fout.write(a);
			}

		} catch (IOException e) {
			System.out.println("  URL         http://www.szu.edu.cn  ");
		}
		File file = new File(
				"C:/Users/97617/workspace/InetAddress/src/com/imooc/szu.html");
		System.out.println("     :"
				+ new DecimalFormat("#.00").format(file.length() / 1024.00)
				+ "k");
	}
}