Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/338.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sockets/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
UDP套接字的java编程_Java_Sockets_Udp - Fatal编程技术网

UDP套接字的java编程

UDP套接字的java编程,java,sockets,udp,Java,Sockets,Udp,此示例代码如下所示: public class UDPServer { enter code here /** * @param args */ public static void main(String[] args) throws Exception{ // TODO Auto-generated method stub DatagramSocket serverSocket=new DatagramSocket

此示例代码如下所示:

public class UDPServer
{

    enter code here
    /**
     * @param args
     */
    public static void main(String[] args) throws Exception{
        // TODO Auto-generated method stub
        DatagramSocket serverSocket=new DatagramSocket(9876);
        byte[] receiveData=new byte[1024];
        byte[] sendData=new byte[1024];
        while(true)
        {
            DatagramPacket receivePacket=new DatagramPacket(receiveData, receiveData.length);
            String sentence=new String(receivePacket.getData());
            InetAddress IPAddress=receivePacket.getAddress();
            int port=receivePacket.getPort();
            String capitalizedSentennce=sentence.toUpperCase();
            sendData=capitalizedSentennce.getBytes();
            DatagramPacket sendPacket=new DatagramPacket(sendData, sendData.length,IPAddress,port);
            serverSocket.send(sendPacket);
        }
    }

}
执行时出现以下错误:

 Exception in thread "main" java.lang.IllegalArgumentException: Port out of range:-1
        at java.net.DatagramPacket.setPort(Unknown Source)
        at java.net.DatagramPacket.<init>(Unknown Source)
        at java.net.DatagramPacket.<init>(Unknown Source)
        at UDPServer.main(UDPServer.java:21)
线程“main”java.lang.IllegalArgumentException中的异常:端口超出范围:-1 位于java.net.DatagramPacket.setPort(未知源) 位于java.net.DatagramPacket。(未知源) 位于java.net.DatagramPacket。(未知源) 位于UDPServer.main(UDPServer.java:21)
有人能帮我解决吗?如果可能,请提供发生这种情况的其他信息。

您忘记在
接收数据包中接收任何内容。
因此没有任何内容。没有端口号,没有源地址,没有数据