Java の URL クラスは、ネットワーク リソースを開いて読み取る、ネットワーク リクエストを送信するなど、一般的な URL 操作を実行できるようにする重要なツールです。この記事では、Java で URL クラスを使用して URL を操作する方法を説明します。
URL クラスは、URL を処理するための Java の標準クラスです。 URL は、Uniform Resource Locator の略で、インターネット上のリソースを指す文字列です。 URL クラスは、URL を操作するための多くのメソッドを提供します。一般的な URL 操作の一部を次に示します:
URL を開くには、URL クラスの openConnection() メソッドを使用できます。このメソッドは、データを読み取ることができる URLConnection オブジェクトを返します。
String urlString = "http://www.example.com"; URL url = new URL(urlString); URLConnection conn = url.openConnection();
この例では、URL を開き、URLConnection オブジェクトを返します。これで、URLConnection オブジェクトを使用して URL 上のデータを読み取ることができます。
URL のデータを読み取るには、URLConnection オブジェクトの入力ストリームを使用できます。この入力ストリームを通じて、URL 上のデータを読み取り、それを文字列またはバイト配列に保存できます。
InputStream in = conn.getInputStream(); ByteArrayOutputStream buffer = new ByteArrayOutputStream(); int nRead; byte[] data = new byte[1024]; while ((nRead = in.read(data, 0, data.length)) != -1) { buffer.write(data, 0, nRead); } buffer.flush(); String result = new String(buffer.toByteArray());
この例では、URL を開いてそのデータを読み取ります。この例では、入力ストリームを使用して URL 上のデータを読み取り、各バイトをバイト配列に保存します。すべてのデータを読み取ったら、このバイト配列を文字列に変換します。
GET リクエストを URL に送信するには、URLConnection オブジェクトの setRequestMethod() メソッドを使用し、そのリクエスト メソッドを「GET」に設定します。その後、上記のように入力ストリームを使用してデータを読み取ることができます。
String urlString = "http://www.example.com/getData?param1=value1¶m2=value2"; URL url = new URL(urlString); URLConnection conn = url.openConnection(); conn.setRequestMethod("GET"); InputStream in = conn.getInputStream(); ByteArrayOutputStream buffer = new ByteArrayOutputStream(); int nRead; byte[] data = new byte[1024]; while ((nRead = in.read(data, 0, data.length)) != -1) { buffer.write(data, 0, nRead); } buffer.flush(); String result = new String(buffer.toByteArray());
この例では、GET リクエストを URL に送信し、返されたデータを読み取ります。この例では、リクエストとパラメータを URL 文字列に入れます。
POST リクエストを URL に送信するには、追加の作業を行う必要があります。 POST リクエストの本文を作成し、URL に送信する必要があります。リクエスト本文を構築するには、Java で URL エンコードを使用できます。
String urlString = "http://www.example.com/postData"; URL url = new URL(urlString); URLConnection conn = url.openConnection(); conn.setDoOutput(true); conn.setRequestMethod("POST"); String data = "param1=" + URLEncoder.encode("value1", "UTF-8") + "¶m2=" + URLEncoder.encode("value2", "UTF-8"); OutputStreamWriter writer = new OutputStreamWriter(conn.getOutputStream()); writer.write(data); writer.flush(); InputStream in = conn.getInputStream(); ByteArrayOutputStream buffer = new ByteArrayOutputStream(); int nRead; byte[] data2 = new byte[1024]; while ((nRead = in.read(data2, 0, data2.length)) != -1) { buffer.write(data2, 0, nRead); } buffer.flush(); String result = new String(buffer.toByteArray());
この例では、POST リクエストを URL に送信し、返されたデータを読み取ります。この例では、Java の URL エンコードを使用してリクエスト本文のパラメータをエンコードします。
概要
上記は、URL クラスを使用して Java で URL 操作を実行する基本的な方法の一部です。 URL クラスは、ネットワーク リソースを開いて読み取り、ネットワーク リクエストを行うための非常に便利なツールです。これらの操作は非常に一般的なものであるため、インターネット関連の開発やプログラミングの作業を行う必要がある場合は、今後の作業でこれらの操作を頻繁に使用することになるでしょう。
以上がJava で URL 操作に URL 関数を使用する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。