A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© Ezreal 中级黑马   /  2014-9-23 15:59  /  1036 人查看  /  6 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

代码如下:在Eclipse上运行的,没有报错也没有异常,功能实现不了。不知道怎么回事了,大神在哪,快来帮忙看看,感激不尽!
  1. import java.net.*;
  2. import java.io.*;
  3. class Send implements Runnable{
  4.         private DatagramSocket ds;
  5.         public Send(DatagramSocket ds)
  6.         {
  7.                 this.ds = ds;
  8.         }
  9.         public void run()
  10.         {
  11.                 try
  12.                 {
  13.                         BufferedReader bufr = new BufferedReader(new InputStreamReader(System.in));
  14.                         String line = null;
  15.                         while((line = bufr.readLine())!=null)
  16.                         {
  17.                                 if("886".equals(line))
  18.                                         break;
  19.                                 byte[] buf = line.getBytes();
  20.                                 DatagramPacket dp =
  21.                                                 new DatagramPacket(buf,buf.length,InetAddress.getByName("117.40.37.5"),9003);
  22.                                 ds.send(dp);
  23.                         }
  24.                 }
  25.                 catch(Exception e)
  26.                 {
  27.                         throw new RuntimeException("发送失败");
  28.                 }       
  29.         }
  30. }
  31. class Rece implements Runnable{
  32.         private DatagramSocket ds;
  33.         public Rece(DatagramSocket ds)
  34.         {
  35.                 this.ds = ds;
  36.         }
  37.         public void run()
  38.         {
  39.                 try
  40.                 {
  41.                         while(true)
  42.                         {
  43.                                 byte[] buf = new byte[1024];
  44.                             DatagramPacket dp = new DatagramPacket(buf,buf.length);
  45.                             ds.receive(dp);
  46.                             String ip = dp.getAddress().getHostAddress();
  47.                             String data = new String(dp.getData(),0,dp.getLength());
  48.                             System.out.println(ip+"::"+data);
  49.                         }
  50.                 }
  51.                 catch(Exception e)
  52.                 {
  53.                         throw new RuntimeException("接收失败");
  54.                 }       
  55.         }
  56. }
  57. public class ChatDemo{
  58.         public static void main (String[] args)throws Exception
  59.         {
  60.                 DatagramSocket sendsocket = new DatagramSocket();
  61.                 DatagramSocket recesocket = new DatagramSocket(9003);
  62.                 new Thread(new Send(sendsocket)).start();
  63.                 new Thread(new Rece(recesocket)).start();
  64.         }
  65. }
复制代码

6 个回复

倒序浏览
华谦 来自手机 中级黑马 2014-9-23 16:18:39
沙发
没有注释,看起来很费劲
回复 使用道具 举报
华谦 来自手机 中级黑马 2014-9-23 16:19:43
藤椅
没有注释,看起来很费劲
回复 使用道具 举报
看了一下,没看出问题来,等别人给你解答把,我udp刚看完视频还没敲代码
回复 使用道具 举报
那个ip地址是你的本地ip地址吗??
回复 使用道具 举报
我也是eclipse运行不出来, 只好dos命令行。
回复 使用道具 举报
你写的那个IP是你自己的IP么,如果不是你改成127.0.0.1试试
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马