java.applet

java.awt

java.awt.color

java.awt.datatransfer

java.awt.dnd

java.awt.event

java.awt.font

java.awt.geom

java.awt.im

java.awt.im.spi

java.awt.image

java.awt.image.renderable

java.awt.print

java.beans

java.beans.beancontext

java.io

java.lang

java.lang.annotation

java.lang.instrument

java.lang.management

java.lang.ref

java.lang.reflect

java.math

java.net

java.nio

java.nio.channels

java.nio.channels.spi

java.nio.charset

java.nio.charset.spi

java.rmi

java.rmi.activation

java.rmi.dgc

java.rmi.registry

java.rmi.server

java.security

java.security.acl

java.security.cert

java.security.interfaces

java.security.spec

java.sql

java.text

java.util

java.util.concurrent

java.util.concurrent.atomic

java.util.concurrent.locks

java.util.jar

java.util.logging

java.util.prefs

java.util.regex

java.util.zip

javax.accessibility

javax.activity

javax.crypto

javax.crypto.interfaces

javax.crypto.spec

javax.imageio

javax.imageio.event

javax.imageio.metadata

javax.imageio.plugins.bmp

javax.imageio.plugins.jpeg

javax.imageio.spi

javax.imageio.stream

javax.management

javax.management.loading

javax.management.modelmbean

javax.management.monitor

javax.management.openmbean

javax.management.relation

javax.management.remote

javax.management.remote.rmi

javax.management.timer

javax.naming

javax.naming.directory

javax.naming.event

javax.naming.ldap

javax.naming.spi

javax.net

javax.net.ssl

javax.print

javax.print.attribute

javax.print.attribute.standard

javax.print.event

javax.rmi

javax.rmi.CORBA

javax.rmi.ssl

javax.security.auth

javax.security.auth.callback

javax.security.auth.kerberos

javax.security.auth.login

javax.security.auth.spi

javax.security.auth.x500

javax.security.cert

javax.security.sasl

javax.sound.midi

javax.sound.midi.spi

javax.sound.sampled

javax.sound.sampled.spi

javax.sql

javax.sql.rowset

javax.sql.rowset.serial

javax.sql.rowset.spi

javax.swing

javax.swing.border

javax.swing.colorchooser

javax.swing.event

javax.swing.filechooser

javax.swing.plaf

javax.swing.plaf.basic

javax.swing.plaf.metal

javax.swing.plaf.multi

javax.swing.plaf.synth

javax.swing.table

javax.swing.text

javax.swing.text

javax.swing.text.parser

javax.swing.text.rtf

javax.swing.tree

javax.swing.undo

javax.transaction

javax.transaction.xa

javax.xml

javax.xml.datatype

javax.xml.namespace

javax.xml.parsers

javax.xml.transform

javax.xml.transform.dom

javax.xml.transform.sax

javax.xml.transform.stream

javax.xml.validation

javax.xml.xpath

org.ietf.jgss

org.omg.CORBA

org.omg.CORBA_2_3

org.omg.CORBA_2_3.portable

org.omg.CORBA.DynAnyPackage

org.omg.CORBA.ORBPackage

org.omg.CORBA.portable

org.omg.CORBA.TypeCodePackage

org.omg.CosNaming

org.omg.CosNaming.NamingContextExtPackage

org.omg.CosNaming.NamingContextPackage

org.omg.Dynamic

org.omg.DynamicAny

org.omg.DynamicAny.DynAnyFactoryPackage

org.omg.DynamicAny.DynAnyPackage

org.omg.IOP

org.omg.IOP.CodecFactoryPackage

org.omg.IOP.CodecPackage

org.omg.Messaging

org.omg.PortableInterceptor

org.omg.PortableInterceptor.ORBInitInfoPackage

org.omg.PortableServer

org.omg.PortableServer.CurrentPackage

org.omg.PortableServer.POAManagerPackage

org.omg.PortableServer.POAPackage

org.omg.PortableServer.portable

org.omg.PortableServer.ServantLocatorPackage

org.omg.SendingContext

org.omg.stub.java.rmi

org.w3c.dom

org.w3c.dom.bootstrap

org.w3c.dom.events

org.w3c.dom.ls

org.xml.sax

org.xml.sax.ext

org.xml.sax.helpers

allclasses-frame

allclasses-noframe

constant-values

deprecated-list

help-doc

JavaTM 2 Platform
Standard Ed. 5.0

java.net
类 DatagramPacket

java.lang.Object
  继承者 java.net.DatagramPacket

public final class DatagramPacket
extends Object

此类表示数据报包。

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

从以下版本开始:
JDK1.0

构造方法摘要
DatagramPacket(byte[] buf, int length)
          构造 DatagramPacket,用来接收长度为 length 的数据包。
DatagramPacket(byte[] buf, int length, InetAddress address, int port)
          构造数据报包,用来将长度为 length 的包发送到指定主机上的指定端口号。
DatagramPacket(byte[] buf, int offset, int length)
          构造 DatagramPacket,用来接收长度为 length 的包,在缓冲区中指定了偏移量。
DatagramPacket(byte[] buf, int offset, int length, InetAddress address, int port)
          构造数据报包,用来将长度为 length 偏移量为 offset 的包发送到指定主机上的指定端口号。
DatagramPacket(byte[] buf, int offset, int length, SocketAddress address)
          构造数据报包,用来将长度为 length 偏移量为 offset 的包发送到指定主机上的指定端口号。
DatagramPacket(byte[] buf, int length, SocketAddress address)
          构造数据报包,用来将长度为 length 的包发送到指定主机上的指定端口号。
 
方法摘要
 InetAddress getAddress()
          返回某台机器的 IP 地址,此数据报将要发往该机器或者是从该机器接收到的。
 byte[] getData()
          返回数据缓冲区。
 int getLength()
          返回将要发送或接收到的数据的长度。
 int getOffset()
          返回将要发送或接收到的数据的偏移量。
 int getPort()
          返回某台远程主机的端口号,此数据报将要发往该主机或者是从该主机接收到的。
 SocketAddress getSocketAddress()
          获取要将此包发送到的或发出此数据报的远程主机的 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 地址 + 端口号)。
 
从类 java.lang.Object 继承的方法
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

构造方法详细信息

DatagramPacket

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

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

参数:
buf - 保存传入数据报的缓冲区。
offset - 缓冲区的偏移量
length - 读取的字节数。
从以下版本开始:
JDK1.2

DatagramPacket

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

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

参数:
buf - 保存传入数据报的缓冲区。
len - 要读取的字节数。

DatagramPacket

public DatagramPacket(byte[] buf,
                      int offset,
                      int length,
                      InetAddress address,
                      int port)
构造数据报包,用来将长度为 length 偏移量为 offset 的包发送到指定主机上的指定端口号。length 参数必须小于或等于 buf.length

参数:
buf - 包数据。
offset - 包数据偏移量。
length - 包数据长度。
address - 目的地址。
port - 目的端口号。
从以下版本开始:
JDK1.2
另请参见:
InetAddress

DatagramPacket

public DatagramPacket(byte[] buf,
                      int offset,
                      int length,
                      SocketAddress address)
               throws SocketException
构造数据报包,用来将长度为 length 偏移量为 offset 的包发送到指定主机上的指定端口号。length 参数必须小于或等于 buf.length

参数:
buf - 包数据。
offset - 包数据偏移量。
length - 包数据长度。
address - 目的套接字地址。
抛出:
IllegalArgumentException - 如果地址类型不受支持
SocketException
从以下版本开始:
1.4
另请参见:
InetAddress

DatagramPacket

public DatagramPacket(byte[] buf,
                      int length,
                      InetAddress address,
                      int port)
构造数据报包,用来将长度为 length 的包发送到指定主机上的指定端口号。length 参数必须小于或等于 buf.length

参数:
buf - 包数据。
length - 包长度。
address - 目的地址。
port - 目的端口号。
另请参见:
InetAddress

DatagramPacket

public DatagramPacket(byte[] buf,
                      int length,
                      SocketAddress address)
               throws SocketException
构造数据报包,用来将长度为 length 的包发送到指定主机上的指定端口号。length 参数必须小于或等于 buf.length

参数:
buf - 包数据。
length - 包长度。
address - 目的地址。
抛出:
IllegalArgumentException - 如果地址类型不受支持
SocketException
从以下版本开始:
1.4
另请参见:
InetAddress
方法详细信息

getAddress

public InetAddress getAddress()
返回某台机器的 IP 地址,此数据报将要发往该机器或者是从该机器接收到的。

返回:
某台机器的 IP 地址,此数据报将要发往该机器或者是从该机器接收到的。
另请参见:
InetAddress, setAddress(java.net.InetAddress)

getPort

public int getPort()
返回某台远程主机的端口号,此数据报将要发往该主机或者是从该主机接收到的。

返回:
返回某台远程主机的端口号,此数据报将要发往该主机或者是从该主机接收到的。
另请参见:
setPort(int)

getData

public byte[] getData()
返回数据缓冲区。接收到的或将要发送的数据从缓冲区中的偏移量 offset 处开始,持续 length 长度。

返回:
用来接收或发送数据的缓冲区
另请参见:
setData(byte[], int, int)

getOffset

public int getOffset()
返回将要发送或接收到的数据的偏移量。

返回:
将要发送或接收到的数据的偏移量。
从以下版本开始:
JDK1.2

getLength

public int getLength()
返回将要发送或接收到的数据的长度。

返回:
将要发送或接收到的数据的长度。
另请参见:
setLength(int)

setData

public void setData(byte[] buf,
                    int offset,
                    int length)
为此包设置数据缓冲区。此方法设置包的数据、长度和偏移量。

参数:
buf - 要为此包设置的缓冲区。
offset - 数据中的偏移量
length - 数据的长度和/或用来接收数据的缓冲区长度。
抛出:
NullPointerException - 如果参数为 null。
从以下版本开始:
JDK1.2
另请参见:
getData(), getOffset(), getLength()

setAddress

public void setAddress(InetAddress iaddr)
设置要将此数据报发往的那台机器的 IP 地址。

参数:
iaddr - InetAddress
从以下版本开始:
JDK1.1
另请参见:
getAddress()

setPort

public void setPort(int iport)
设置要将此数据报发往的远程主机上的端口号。

参数:
iport - 端口号
从以下版本开始:
JDK1.1
另请参见:
getPort()

setSocketAddress

public void setSocketAddress(SocketAddress address)
设置要将此数据报发往的远程主机的 SocketAddress(通常为 IP 地址 + 端口号)。

参数:
address - SocketAddress
抛出:
IllegalArgumentException - 如果地址为 null 或为不受此套接字支持的 SocketAddress 子类。
从以下版本开始:
1.4
另请参见:
getSocketAddress()

getSocketAddress

public SocketAddress getSocketAddress()
获取要将此包发送到的或发出此数据报的远程主机的 SocketAddress(通常为 IP 地址 + 端口号)。

返回:
SocketAddress
从以下版本开始:
1.4
另请参见:
setSocketAddress(java.net.SocketAddress)

setData

public void setData(byte[] buf)
为此包设置数据缓冲区。将此 DatagramPacket 的偏移量设置为 0,长度设置为 buf 的长度。

参数:
buf - 要为此包设置的缓冲区。
抛出:
NullPointerException - 如果参数为 null。
从以下版本开始:
JDK1.1
另请参见:
getLength(), getData()

setLength

public void setLength(int length)
为此包设置长度。包的长度是指包数据缓冲区中将要发送的字节数,或用来接收数据的包数据缓冲区的字节数。长度必须小于或等于偏移量与包缓冲区长度之和。

参数:
length - 要为此包设置的长度。
抛出:
IllegalArgumentException - 如果长度为负或大于包数据缓冲区长度。
从以下版本开始:
JDK1.1
另请参见:
getLength(), setData(byte[], int, int)

JavaTM 2 Platform
Standard Ed. 5.0

提交错误或意见
有关更多的 API 参考资料和开发人员文档,请参阅 Java 2 SDK SE 开发人员文档。该文档包含更详细的、面向开发人员的描述,以及总体概述、术语定义、使用技巧和工作代码示例。

版权所有 2004 Sun Microsystems, Inc. 保留所有权利。 请遵守许可证条款。另请参阅文档重新分发政策