ホームページ >Java >&#&チュートリアル >外部ライブラリを使用せずに Java で Web ページのコンテンツを読み取るにはどうすればよいですか?

外部ライブラリを使用せずに Java で Web ページのコンテンツを読み取るにはどうすればよいですか?

王林
王林転載
2023-09-02 08:45:081091ブラウズ

外部ライブラリを使用せずに Java で Web ページのコンテンツを読み取るにはどうすればよいですか?

java.net パッケージの URL クラスは、ファイル内のリソース (ファイル、ディレクトリ、または参照) を指すために使用される Uniform Resource Locator を表します。 World Wide Web.

このクラスの openStream() メソッドは、現在のオブジェクトによって表される URL への接続を開き、InputStream オブジェクトを返します。 URL からデータを読み取ります。

したがって、(URL クラスを使用して) Web ページからデータを読み取るには、 -

  • を渡して java.net.URL クラスをインスタンス化します。コンストラクターへのパラメーターとして目的の Web ページの URL を指定します。

  • openStream() メソッドを呼び出して、InputStream オブジェクトを取得します。

  • インスタンス化する上記で取得した InputStream オブジェクトをパラメータとして渡して、Scanner クラスを作成します。

Example

import java.io.IOException;
import java.net.URL;
import java.util.Scanner;
public class ReadingWebPage {
   public static void main(String args[]) throws IOException {
      //Instantiating the URL class
      URL url = new URL("http://www.something.com/");
      //Retrieving the contents of the specified page
      Scanner sc = new Scanner(url.openStream());
      //Instantiating the StringBuffer class to hold the result
      StringBuffer sb = new StringBuffer();
      while(sc.hasNext()) {
         sb.append(sc.next());
         //System.out.println(sc.next());
      }
      //Retrieving the String from the String Buffer object
      String result = sb.toString();
      System.out.println(result);
      //Removing the HTML tags
      result = result.replaceAll("<[^>]*>", "");
      System.out.println("Contents of the web page: "+result);
   }
}

出出

<html><body><h1>Itworks!</h1></body></html>
Contents of the web page: Itworks!

以上が外部ライブラリを使用せずに Java で Web ページのコンテンツを読み取るにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はtutorialspoint.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。