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

 时间:2026-02-16 17:43:16

1、确定思路:

1.编写发送端

2.编写接收端

3.运行程序

2、接收端的编写及思路:

1.通过UDP socket,建立端点服务

2.定义数据包用于储存数据

3.通过receive方法将接收到的数据存入数据包中

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版的聊天功能

  • 大学生该如何申请贫困补助
  • 西门子主机FC18使用CAN光端机实现超远距离组网
  • 超声波测厚仪测量误差原因
  • 如何分辨高通芯片的类型
  • 方阵英雄如何进行英雄重置
  • 热门搜索
    尘肺病怎么治疗 北汽威旺m20怎么样 淘宝店铺怎么关闭 均衡器怎么调 很怎么读 枸杞子怎么泡水 丝蓓绮洗发水怎么样 跌打损伤怎么办 怎么做生日蛋糕 头发掉的厉害怎么办