黑马程序员技术交流社区

标题: UDP聊天的问题??? [打印本页]

作者: IT人    时间: 2013-11-27 12:26
标题: UDP聊天的问题???
怎样用UDP传输协议,怎样把发送的数据和接受的数据显示到GUI图形界面上???求解答!!
作者: 陪你等日出    时间: 2013-11-27 13:10
本帖最后由 陪你等日出 于 2013-11-27 13:25 编辑

例如说你要发送“Hello java!”
那么你创建的图形化界面上应该是像QQ聊天界面那样,有两个文本区域TextArea,上面显示聊天信息(包括接收的数据)假设定义为tad,下面是你写字的地方假设定义为tax,你就可以在tax控件里写上“Hello java!”,那么UDP传输发送时要将数据变成字节数组存入数据包发送,那么发送时:
  1. String str = tax.getText();
  2. tad.append("发送的数据:"+str+"\r\n");
  3. byte[] buf = str.getBytes();
复制代码

这样,你要发送的“Hello java!”就显示在图形化界面上了,下面buf是准备发送出去的数据,建立数据包封装发送即可。
接收的数据显示在图形化界面上:
  1. DatagramSocket ds = new DatagramSocket();
  2. byte[] buf = new byte[1024];</p><p> //建立数据包用来接收数据
  3. DatagramPacket dp = new DatagramPacket(buf,buf.length);
  4. ds.receive(dp);
  5. String data = new String(dp.getData(),0,dp.getLength());
  6. tad.append("接收的数据:"+data);
复制代码


其实就是一个TextArea.append(String str)的方法
作者: IT人    时间: 2013-11-27 13:14
谢谢!我试试!




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2