DatagramPacket API 详解

此类表示数据报包。

数据报包用来实现无连接包投递服务。每条报文仅根据该包中包含的信息从一台机器路由到另一台机器。从一台机器发送到另一台机器的多个包可能选择不同的路由,也可能按不同的顺序到达。不对包投递做出保证。

version 1.46, 04/07/06
since JDK1.0


Constructors
public DatagramPacket(byte[] buf, int offset, int length)
zh_cn
构造 DatagramPacket,用来接收长度为 length 的包,在缓冲区中指定了偏移量。

length 参数必须小于等于 buf.length

buf
zh_cn
保存传入数据报的缓冲区。
offset
zh_cn
缓冲区的偏移量
length
zh_cn
要读取的字节数。
since 1.2

public DatagramPacket(byte[] buf, int length)
zh_cn
构造 DatagramPacket,用来接收长度为 length 的数据包。

length 参数必须小于等于 buf.length

buf
zh_cn
保存传入数据报的缓冲区。
length
zh_cn
要读取的字节数。

public DatagramPacket(byte[] buf, int offset, int length, InetAddress address, int port)
zh_cn
构造数据报包,用来将长度为 length 偏移量为 offset 的包发送到指定主机上的指定端口号。length 参数必须小于等于buf.length
buf
zh_cn
包数据。
offset
zh_cn
包数据偏移量。
length
zh_cn
包数据长度。
address
zh_cn
目的地址。
port
zh_cn
目的端口号。
since 1.2
See also java.net.InetAddress
public DatagramPacket(byte[] buf, int offset, int length, SocketAddress address) throws SocketException
zh_cn
构造数据报包,用来将长度为 length 偏移量为 offset 的包发送到指定主机上的指定端口号。length 参数必须小于等于buf.length
buf
zh_cn
包数据。
offset
zh_cn
包数据偏移量。
length
zh_cn
包数据长度。
address
zh_cn
目的套接字地址。
Throws IllegalArgumentException: 
zh_cn
如果地址类型不受支持
since 1.4
See also java.net.InetAddress
public DatagramPacket(byte[] buf, int length, InetAddress address, int port)
zh_cn
构造数据报包,用来将长度为 length 的包发送到指定主机上的指定端口号。length 参数必须小于等于 buf.length
buf
zh_cn
包数据。
length
zh_cn
包长度。
address
zh_cn
目的地址。
port
zh_cn
目的端口号。
See also java.net.InetAddress
public DatagramPacket(byte[] buf, int length, SocketAddress address) throws SocketException
zh_cn
构造数据报包,用来将长度为 length 的包发送到指定主机上的指定端口号。length 参数必须小于等于 buf.length
buf
zh_cn
包数据。
length
zh_cn
包长度。
address
zh_cn
目的地址。
Throws IllegalArgumentException: 
zh_cn
如果地址类型不受支持
since 1.4
See also java.net.InetAddress

Properties
public void setAddress(InetAddress iaddr)
zh_cn
设置要将此数据报发往的那台机器的 IP 地址。
iaddr
zh_cn
InetAddress
since JDK1.1
See also getAddress()
public InetAddress getAddress()
zh_cn
返回某台机器的 IP 地址,此数据报将要发往该机器或者是从该机器接收到的。
return
zh_cn
某台机器的 IP 地址,此数据报将要发往该机器或者是从该机器接收到的。
See also java.net.InetAddress, setAddress(java.net.InetAddress)
public void setData(byte[] buf, int offset, int length)
zh_cn
为此包设置数据缓冲区。此方法设置包的数据、长度和偏移量。
buf
zh_cn
要为此包设置的缓冲区。
offset
zh_cn
数据中的偏移量
length
zh_cn
数据的长度和/或用来接收数据的缓冲区长度。
Throws NullPointerException: 
zh_cn
如果参数为 null。
since 1.2
See also getData, getOffset, getLength
public void setData(byte[] buf)
zh_cn
为此包设置数据缓冲区。将此 DatagramPacket 的偏移量设置为 0,长度设置为 buf 的长度。
buf
zh_cn
要为此包设置的缓冲区。
Throws NullPointerException: 
zh_cn
如果参数为 null。
since JDK1.1
See also getLength, getData
public byte[] getData()
zh_cn
返回数据缓冲区。接收到的或将要发送的数据从缓冲区中的偏移量 offset 处开始,持续 length 长度。
return
zh_cn
用来接收或发送数据的缓冲区
See also setData(byte[], int, int)
public void setLength(int length)
zh_cn
为此包设置长度。包的长度是指包数据缓冲区中将要发送的字节数,或用来接收数据的包数据缓冲区的字节数。长度必须小于等于偏移量与包缓冲区长度之和。
length
zh_cn
要为此包设置的长度。
Throws IllegalArgumentException: 
zh_cn
如果长度为负或大于包数据缓冲区长度。
since JDK1.1
See also getLength, setData
public int getLength()
zh_cn
返回将要发送或接收到的数据的长度。
return
zh_cn
将要发送或接收到的数据的长度。
See also setLength(int)
public int getOffset()
zh_cn
返回将要发送或接收到的数据的偏移量。
return
zh_cn
将要发送或接收到的数据的偏移量。
since 1.2
public void setPort(int iport)
zh_cn
设置要将此数据报发往的远程主机上的端口号。
iport
zh_cn
端口号
since JDK1.1
See also getPort()
public int getPort()
zh_cn
返回某台远程主机的端口号,此数据报将要发往该主机或者是从该主机接收到的。
return
zh_cn
返回某台远程主机的端口号,此数据报将要发往该主机或者是从该主机接收到的。
See also setPort(int)
public void setSocketAddress(SocketAddress address)
zh_cn
设置要将此数据报发往的远程主机的 SocketAddress(通常为 IP 地址 + 端口号)。
address
zh_cn
SocketAddress
Throws IllegalArgumentException: 
zh_cn
如果地址为 null 或为不受此套接字支持的 SocketAddress 子类。
since 1.4
See also getSocketAddress
public SocketAddress getSocketAddress()
zh_cn
获取要将此包发送到的或发出此数据报的远程主机的 SocketAddress(通常为 IP 地址 + 端口号)。
return
zh_cn
SocketAddress
since 1.4
See also setSocketAddress
 API  http://doc.java.sun.com/DocWeb/api/all/java.net.DatagramPacket

你可能感兴趣的:(api,null,byte)