ドキュメンテーション

最新のリリースでは、このページがまだ翻訳されていません。 このページの最新版は英語でご覧になれます。

java.net.URL を使用した URL の読み取り

概要

このプログラム URLdemo は、URL (Uniform Resource Locator) で指定された Web サイトに接続し、そのサイトのファイルからテキストを読み取ります。MATLAB® 関数を使用して Web サイトのコンテンツにアクセスする例については、「Web アクセス」を参照してください。

URLdemo では Java® API クラスのオブジェクトである java.net.URL が作成され、これにより URL の扱いが簡単になります。次に、URL オブジェクトのメソッドを呼び出して、接続を開きます。

サイトでテキスト行を読み取って表示するために、URLdemo は Java I/O パッケージ java.io からのクラスを使用します。InputStreamReader オブジェクトを作成し、そのオブジェクトを使用して BufferedReader オブジェクトを作成します。最後に、BufferedReader オブジェクトでメソッドを呼び出し、サイトから指定した行数分を読み取ります。

URLdemo の説明

URLdemo によって実行される主要なタスクは以下のとおりです。

  1. URL オブジェクトを作成します。

    この例では、最初に java.net.URL のコンストラクターを呼び出し、結果のオブジェクトを変数 url に代入します。URL コンストラクターは、アクセス先の URL の名前を唯一の引数として取ります。コンストラクターは入力 URL が有効な形式かどうかを確認します。

    url = java.net.URL('http://www.mathworks.com')
  2. URL に接続します。

    例にある 2 番目のステートメントはメソッド openStreamURL オブジェクト url 上で呼び出し、オブジェクトによって指定された Web サイトとの接続を確立します。メソッドは InputStream オブジェクトを変数 is に返し、サイトからバイトを読み取ります。

    is = openStream(url);
  3. バッファーされたストリーム リーダーを設定します。

    次の 2 行は、文字のバッファーされたストリーム リーダーを作成します。java.io.InputStreamReader コンストラクターは、入力ストリーム is で呼び出され、文字の読み取りに利用可能なオブジェクトを変数 isr に返します。次に、java.io.BufferedReader コンストラクターが isr で呼び出され、BufferedReader オブジェクトを変数 br に返します。バッファーされたリーダーにより、文字、配列、行が効率的に読み取られます。

    isr = java.io.InputStreamReader(is);
    br = java.io.BufferedReader(isr);
  4. テキスト行を読み取って表示します。

    次のステートメントは、サイトから HTML テキストの行を読み取り、段落タグ (<p>) で始まるテキストを探します。MATLAB while ループ内で、BufferedReader メソッド readLine は、サイトからテキストの各行 (return や改行文字によって終了) を読み取ります。

    p1 = java.lang.String('<p>');
    p2 = java.lang.String('</p>');
    s = readLine(br);
    while ~(s.startsWith(p1))
       s = readLine(br);
    end
    
    
  5. テキストを表示します。

    disp(s.substring(p1.length,s.length-p2.length))

例の実行

この例を実行すると、以下のような出力が表示されます

Explore products for MATLAB, the language of technical computing, and Simulink, for simulation and Model-Based Design.

詳細

この情報は役に立ちましたか?