运行结果:
----------------number 2-----------------
Handing client at10.164.131.42 on port:4059
set Data before:Hello Job! current learning english?
set Data after:Hello Job! current learning english?  —> 通过setData设置后,数据没有改变怎么回事啊??在线等....

解决方案 »

  1.   

    我把UDP的Server端代码该为如下就可以了:public class UDPEchoServerTimeout
    {    public static void main(String[] args) throws IOException
        {
            byte[] msg = new String("Hello sone current learning english?")
                    .getBytes();
            DatagramSocket socket = new DatagramSocket(8850);        int count = 1;
            while (true)
            {
                //这里必须每次都新创建一个才可以
                DatagramPacket packet = new DatagramPacket(new byte[255], 255);            socket.receive(packet);            System.out.println("----------------" + "number " + count
                        + "-----------------");            System.out.println("Handing client at"
                        + packet.getAddress().getHostAddress() + " on port:"
                        + packet.getPort());            System.out.println("set Data before:"
                        + new String(packet.getData()));            packet.setData(msg);            System.out
                        .println("set Data after:" + new String(packet.getData()));            socket.send(packet);
                // packet.setLength(packet.getLength());            count++;
            }
        }
    }
      

  2.   

    ----------------number 1-----------------
    Handing client at192.168.22.188 on port:63803
    set Data before:Hello Job!这是我的运行结果,没错 啊