java.lang.Object
java.net.DatagramPacket
public final class DatagramPacket extends Object
このクラスはデータグラム・パケットを表します。
データグラム・パケットは、無接続パケット配布サービスを実装する際に使用します。 各メッセージは、パケット内に含まれている情報だけを基に、あるマシンから別のマシンへ送信されます。 あるマシンから別のマシンに複数のパケットが送信される場合、それらの各パケットは異なる経路で送信される可能性があり、その到着順序もさまざまな可能性があります。 パケットの配信は保証されません。
特に指定がないかぎり、null
引数を渡すとNullPointerException
がスローされます。
DatagramPacket
のメソッドおよびコンストラクタは、SocketAddress
型のパラメータを受け入れます。 DatagramPacket
はInetSocketAddress
をサポートし、追加のSocketAddress
サブタイプをサポートする場合があります。
- 導入されたバージョン:
- 1.0
-
コンストラクタのサマリー
コンストラクタコンストラクタ説明DatagramPacket
(byte[] buf, int length) 長さがlength
のパケットを受信するためのDatagramPacket
を構築します。DatagramPacket
(byte[] buf, int offset, int length) バッファへのオフセットを指定して、長さがlength
のパケットを受信するためのDatagramPacket
を構築します。DatagramPacket
(byte[] buf, int offset, int length, InetAddress address, int port) 指定されたホスト上の指定されたポート番号にオフセットoffset
を使用してlength
の長さのパケットを送信するためにデータグラム・パケットを構築します。DatagramPacket
(byte[] buf, int offset, int length, SocketAddress address) 指定されたホスト上の指定されたポート番号にオフセットoffset
を使用してlength
の長さのパケットを送信するためにデータグラム・パケットを構築します。DatagramPacket
(byte[] buf, int length, InetAddress address, int port) 長さlength
のパケットを指定されたホスト上の指定されたポート番号に送信するためのデータグラム・パケットを構築します。DatagramPacket
(byte[] buf, int length, SocketAddress address) 長さlength
のパケットを指定されたホスト上の指定されたポート番号に送信するためのデータグラム・パケットを構築します。 -
メソッドのサマリー
修飾子と型メソッド説明このデータグラムの送信先またはデータグラムの受信元のマシンのIPアドレスを返します。設定されていない場合はnull
を返します。byte[]
getData()
データ・バッファを返します。int
送信するデータの長さ、または受信したデータの長さを返します。int
送信するデータのオフセット、または受信したデータのオフセットを返します。int
getPort()
このデータグラムの送信先またはデータグラムの受信元のリモート・ホスト上のポート番号を返します。設定されていない場合は0を返します。このパケットの送信先または送信元のリモート・ホストのSocketAddress
(通常は「IPアドレス」 + 「ポート番号」)を返します。void
setAddress
(InetAddress iaddr) このデータグラムの送信先であるマシンのIPアドレスを設定します。void
setData
(byte[] buf) このパケットのデータ・バッファを設定します。void
setData
(byte[] buf, int offset, int length) このパケットのデータ・バッファを設定します。void
setLength
(int length) このパケットの長さを設定します。void
setPort
(int iport) このデータグラムの送信先であるリモート・ホストのポート番号を設定します。void
setSocketAddress
(SocketAddress address) このデータグラムの送信先であるリモート・ホストのSocketAddress (通常はIPアドレス+ポート番号)を設定します。
-
コンストラクタの詳細
-
DatagramPacket
public DatagramPacket(byte[] buf, int offset, int length) バッファへのオフセットを指定して、長さがlength
のパケットを受信するためのDatagramPacket
を構築します。引数
length
の値は、buf.length
の値以下である必要があります。- パラメータ:
buf
- 着信データグラムを保持するためのバッファ。offset
- バッファへのオフセットlength
- 読み込むバイト数。- 例外:
IllegalArgumentException
- 長さまたはオフセットが負の値の場合、または長さとオフセットの合計が、指定されたバッファのパケット長より大きい場合。- 導入されたバージョン:
- 1.2
-
DatagramPacket
public DatagramPacket(byte[] buf, int length) 長さがlength
のパケットを受信するためのDatagramPacket
を構築します。引数
length
の値は、buf.length
の値以下である必要があります。- パラメータ:
buf
- 着信データグラムを保持するためのバッファ。length
- 読み込むバイト数。- 例外:
IllegalArgumentException
- 長さが負の場合、または長さが指定されたバッファのパケット長より大きい場合。
-
DatagramPacket
public DatagramPacket(byte[] buf, int offset, int length, InetAddress address, int port) 指定されたホスト上の指定されたポート番号にオフセットoffset
を使用してlength
の長さのパケットを送信するためにデータグラム・パケットを構築します。 引数length
の値は、buf.length
の値以下である必要があります。- パラメータ:
buf
- パケット・データ。offset
- パケット・データのオフセット。length
- パケット・データの長さ。address
- 宛先アドレス、またはnull
。port
- 転送先ポート番号。- 例外:
IllegalArgumentException
- 長さまたはオフセットが負の値の場合、長さとオフセットの合計が指定されたバッファの長さより大きい場合、またはポートが範囲外の場合。- 導入されたバージョン:
- 1.2
- 関連項目:
-
DatagramPacket
public DatagramPacket(byte[] buf, int offset, int length, SocketAddress address) 指定されたホスト上の指定されたポート番号にオフセットoffset
を使用してlength
の長さのパケットを送信するためにデータグラム・パケットを構築します。 引数length
の値は、buf.length
の値以下である必要があります。- パラメータ:
buf
- パケット・データ。offset
- パケット・データのオフセット。length
- パケット・データの長さ。address
- 転送先ソケット・アドレス。- 例外:
IllegalArgumentException
- addressがnullの場合、その型がサポートされていない場合、lengthまたはoffsetが負の場合、またはlengthにoffsetを加えた値が指定されたバッファの長さより大きい場合。- 導入されたバージョン:
- 1.4
- 関連項目:
-
DatagramPacket
public DatagramPacket(byte[] buf, int length, InetAddress address, int port) 長さlength
のパケットを指定されたホスト上の指定されたポート番号に送信するためのデータグラム・パケットを構築します。 引数length
の値は、buf.length
の値以下である必要があります。- パラメータ:
buf
- パケット・データ。length
- パケットの長さ。address
- 宛先アドレス、またはnull
。port
- 転送先ポート番号。- 例外:
IllegalArgumentException
- 長さが負の場合、長さが指定されたバッファのパケット長より大きい場合、またはポートが範囲外の場合。- 関連項目:
-
DatagramPacket
public DatagramPacket(byte[] buf, int length, SocketAddress address) 長さlength
のパケットを指定されたホスト上の指定されたポート番号に送信するためのデータグラム・パケットを構築します。 引数length
の値は、buf.length
の値以下である必要があります。- パラメータ:
buf
- パケット・データ。length
- パケットの長さ。address
- 転送先アドレス。- 例外:
IllegalArgumentException
- addressがnullの場合、その型がサポートされていない場合、長さが負の場合、長さが指定されたバッファのパケット長より大きい場合、またはポートが範囲外の場合。- 導入されたバージョン:
- 1.4
- 関連項目:
-
-
メソッドの詳細
-
getAddress
public InetAddress getAddress()このデータグラムの送信先またはデータグラムの受信元のマシンのIPアドレスを返します。設定されていない場合はnull
を返します。- 戻り値:
- このデータグラムの送信先であるマシン、またはデータグラムの送信元であるマシンのIPアドレス。
- 関連項目:
-
getPort
public int getPort()このデータグラムの送信先またはデータグラムの受信元のリモート・ホスト上のポート番号を返します。設定されていない場合は0を返します。- 戻り値:
- このデータグラムの送信先、またはデータグラムの送信元の、リモート・ホスト上のポート番号。
- 関連項目:
-
getData
public byte[] getData()データ・バッファを返します。 受信したデータまたは送信するデータは、バッファ内のoffset
から始まり、length
の長さだけ続きます。- 戻り値:
- データを受信または送信するのに使うバッファ
- 関連項目:
-
getOffset
public int getOffset()送信するデータのオフセット、または受信したデータのオフセットを返します。- 戻り値:
- 送信するデータのオフセット、または受信したデータのオフセット。
- 導入されたバージョン:
- 1.2
-
getLength
public int getLength()送信するデータの長さ、または受信したデータの長さを返します。- 戻り値:
- 送信するデータの長さ、または受信したデータの長さ。
- 関連項目:
-
setData
public void setData(byte[] buf, int offset, int length) このパケットのデータ・バッファを設定します。 これにより、パケットのデータ、長さ、およびオフセットが設定されます。- パラメータ:
buf
- このパケット用として設定するバッファoffset
- データへのオフセットlength
- データの長さまたはデータ受信に使用するバッファの長さ、あるいはその両方- 例外:
IllegalArgumentException
- 長さまたはオフセットが負の値の場合、または長さとオフセットの合計が、指定されたバッファのパケット長より大きい場合。- 導入されたバージョン:
- 1.2
- 関連項目:
-
setAddress
public void setAddress(InetAddress iaddr) このデータグラムの送信先であるマシンのIPアドレスを設定します。- パラメータ:
iaddr
-InetAddress
、またはnull
。- 導入されたバージョン:
- 1.1
- 関連項目:
-
setPort
public void setPort(int iport) このデータグラムの送信先であるリモート・ホストのポート番号を設定します。- パラメータ:
iport
- ポート番号- 例外:
IllegalArgumentException
- ポートが範囲外の場合- 導入されたバージョン:
- 1.1
- 関連項目:
-
setSocketAddress
public void setSocketAddress(SocketAddress address) このデータグラムの送信先であるリモート・ホストのSocketAddress (通常はIPアドレス+ポート番号)を設定します。- パラメータ:
address
-SocketAddress
- 例外:
IllegalArgumentException
- アドレスがnullであるか、SocketAddressサブクラスがサポートされていない場合。- 導入されたバージョン:
- 1.4
- 関連項目:
-
getSocketAddress
public SocketAddress getSocketAddress()このパケットの送信先または送信元のリモート・ホストのSocketAddress
(通常は「IPアドレス」 + 「ポート番号」)を返します。- 戻り値:
SocketAddress
- 導入されたバージョン:
- 1.4
- 関連項目:
-
setData
public void setData(byte[] buf) このパケットのデータ・バッファを設定します。 このDatagramPacketのオフセットは0に、長さはbuf
の長さに、それぞれ設定されます。- パラメータ:
buf
- このパケット用として設定するバッファ。- 導入されたバージョン:
- 1.1
- 関連項目:
-
setLength
public void setLength(int length) このパケットの長さを設定します。 パケットの長さとは、パケットのデータ・バッファ内の送信対象バイト数、パケットのデータ・バッファ内でデータ受信に使用されるバイト数、のいずれかです。 lengthは、オフセットとパケット・バッファ長を足した値以下でなければいけません。- パラメータ:
length
- このパケット用として設定する長さ。- 例外:
IllegalArgumentException
- 長さが負の場合、または長さとオフセットの合計がパケット・データ・バッファの長さより大きい場合。- 導入されたバージョン:
- 1.1
- 関連項目:
-