日期:2014-05-20  浏览次数:20704 次

做一个类似QQ的聊天程序遇到的UDP问题
我是一个才学JAVA不久的新手,现在在学做一个类似QQ的聊天程序,遇到个消息发送问题,我在客户端用UDP接收和发送信息,发送消息没问题,可是接收消息时有点问题,就是我在单机上调试,登陆两个号码,当登陆第二个号码是提示。ADDRESS   IS   USERD,好像是这个,就是说地址在使用中,我想是在创建接收消息数据报时用了同一个端口造成的,我的代码如下:

//以下创建数据报
                public   void   CreatUDP()
                {
                                  try
                                  {
                                  sendSocket=new   DatagramSocket();
                                                receiveSocket=new   DatagramSocket(8899);
                                                //   System.out.println( "udp   ok ");
                                  }catch(SocketException   se)
                                  {
                                  se.printStackTrace();
                                  System.out.println( "false   udp ");
                                  }
                }
                public   void   run()
                {
                while(true)//无限监听好友消息
                {
                try
                {
                for(int   i=0;i <512;i++)
                {
                array1[i]= '   ';
                }
                receivePacket=new   DatagramPacket(array1,array1.length);
                receiveSocket.receive(receivePacket);
                byte[]   data=receivePacket.getData();
                String   infofromip=receivePacket.getAddress().getHostAddress().toString().trim();
                received=new   String(data,0,data.length);
                received.trim();
                int   temp_qqno;
                int   temp_int;
                index2=0;