通过UDP技术实现DOS版的聊天功能

2025-06-30 07:03:14

1、确定思路:1.编写发送端2.编写接收端3.运行程序

2、接收端的编写及思路:1.通过UDP socket,建立端点服务2.定义数据包用于储存数据3.通过receiv髫潋啜缅e方法将接收到的数据存入数据包中4.通过包的方法获取数据5.打印在控制台上package UDP;import java.net.DatagramPacket;import java.net.DatagramSocket;public class Udpreceive { /** * @param args */ public static void main(String[] args)throws Exception { // TODO Auto-generated method stub //1.通过UDP socket,建立端点服务 DatagramSocket ds=new DatagramSocket(10000); //2.定义数据包用于储存数据 byte[] buf=new byte[1024]; //3.通过receive方法将接收到的数据存入数据包中 DatagramPacket dp=new DatagramPacket(buf,buf.length); ds.receive(dp); //4.通过包的方法获取数据 String ip=dp.getAddress().getHostAddress(); String data=new String(dp.getData(),0,dp.getLength()); int port=dp.getPort(); //5.打印在控制台上 System.out.println(ip+"::"+data+"::"+port); }}

3、编写发送端及思路:1.创建UPD服务,实现Socket套接字,通过DatagramSocket对象2.确定数据并封装成数据包,DatagramPacket(byte[] buf, int length, InetAddress address, int port)3.通过Soket服务将已有数据包发送出去,通过send()方法4.关闭数据源package UDP;import java.net.DatagramPacket;import java.net.DatagramSocket;import java.net.InetAddress;import java.net.SocketException;public class Udpsend { /** * @param args * @throws SocketException */ public static void main(String[] args) throws Exception { // TODO Auto-generated method stub //1.创建UPD服务,通过DatagramSocket对象 DatagramSocket ds=new DatagramSocket(8888); //2.确定数据并封装成数据包,DatagramPacket(byte[] buf, int length, InetAddress address, int port) byte[] buf="你好,哈哈!!".getBytes(); DatagramPacket dp=new DatagramPacket(buf,buf.length,InetAddress.getByName("183.47.66.228 "),10000); //3.通过Soket服务将已有数据包发送出去,通过send()方法 ds.send(dp); //4.关闭数据源 ds.close(); }}

4、通过点击那个红色圈圈里的绿色按钮,运行两段代码可可看到,聊天的结果,实现了发送和接收!如果你想实现像QQ那样的聊天效果,只需要在里边的代码里加一段循环即可,这里就不做演示啦!

通过UDP技术实现DOS版的聊天功能
声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢