研究演習(小松原)

Java ソースコード (ファイル名はWebSimple.java)

Webページデータの読み取り サンプル

/*
 * WebSimple.java
 */
import java.io.*;
import java.net.*;
import java.awt.*;
import java.awt.event.*;
import java.io.*;
import javax.swing.*;
import java.util.regex.*;
import java.util.*;
import java.text.*;

public class WebSimple {
	public static void main(String[] args) {
		StringBuffer sb=new StringBuffer();//Stringとよく似た機能をもつクラス。文字列を結合する処理
		//が多いときには効率が良い。
		String strHttptext="";//Webサーバーから読み取ったHTTPテキストデータを入れる
		String strWork="";//作業用変数
		String url="http://mm1.osu.ac.jp";//サイトのurlを入れる
		URL urlObj; //ネットワーク接続に使うURLを保持する
		HttpURLConnection urlCon; //Webサイトに接続するためのクラス
		BufferedReader urlIn; //Webサイトからのデータを受け取るためのクラス
		String str;		
	
		System.out.println("URL=" + url);
		String CharEnc="JISAutoDetect";//サイトの文字コードの切り替えに使用。
		//CharEnc="EUC-JP";
		//CharEnc="UTF-8";
		//CharEnc="JISAutoDetect";
		
		try {
      // URLオブジェクトの作成
			urlObj = new URL(url);//インターネット接続のためのURL型オブジェクト
			System.out.println("URL=" + url);
      // URL接続
			urlCon = (HttpURLConnection)urlObj.openConnection();//サイトに接続する
			urlCon.setRequestMethod("GET");//サイトにGETコマンドを送り、Webページデータを要求する。
			//ネットワークからの入力データはBufferedReaderで受け取る。(ファイル処理と同様)
			urlIn = new BufferedReader(
			new InputStreamReader(
			 // urlCon.getInputStream(),"JISAutoDetect"));
				urlCon.getInputStream(),CharEnc));//文字コードも指定する。
			//文字コード形式はCharEnc内で指定されている
			
			//レスポンスメッセージを受け取り、表示
			System.out.println(urlCon.getResponseMessage());
			System.out.println("レスポンスコード[" + urlCon.getResponseCode() + "] " +
					 "レスポンスメッセージ[" + urlCon.getResponseMessage()  );                 
		  // HTMLデータをStringBuffer sbに入れる。データはstrWorkにまとめて入っている
			while ((strWork = urlIn.readLine()) != null) {
				sb.append(strWork);
				//strHttptext += strWork; 
			}
			//HTMLデータをjTextArea1に表示する。
			System.out.println(sb.toString());
		// URL切断
			urlIn.close();
			urlCon.disconnect();
		} catch (Exception ex) {
			//ここは例外が発生したときの処理。つまりエラーが発生したときの処理。
			//レスポンスコードとして-Error-と表示
			System.out.println("-Error-");
			System.out.println(ex.toString());
		}
  }
}
}

▼研究演習ホームに戻る
▼小松原研究室公開ページ

 !   Information
ここは,小松原ゼミ研究演習履修者用のWebページです.

講義レポート提出管理システムRepadを公開しました。
軽量,フリーのLMSです。

  (c)2008 M. Komatsubara