java实现UDP聊天---转载

 

import java.io.*;

import java.net.*;

class Send implements Runnable

{

private DatagramSocket ds;

public Send (DatagramSocket ds)

{

this.ds = ds;

}

public void run()

{

try

{

BufferedReader bufr = new BufferedReader(new InputStreamReader(System.in));

String line = null;

while((line = bufr.readLine())!=null)

{

if("bye".equals(line))

break;

byte[] buf = line.getBytes();

DatagramPacket dp = new DatagramPacket(buf,buf.length,InetAddress.getByName("IP地址"),4353);

ds.send(dp);

}

}

catch(Exception e)

{

throw new RuntimeException("发送失败");

}

}

}

class Rece implements Runnable

{

private DatagramSocket ds;

public Rece (DatagramSocket ds)

{

this.ds = ds;

}

public void run()

{

try

{

while(true)

{

byte[] buf = new byte[1024];

DatagramPacket dp = new DatagramPacket(buf,buf.length);

ds.receive(dp);

String ip = dp.getAddress().getHostAddress();

String data = new String(dp.getData(),0,dp.getLength());

System.out.println(ip+":::"+data);

}

}

catch(Exception e)

{

throw new RuntimeException("接收失败");

}

}

}

class ChatTest

{

public static void main(String[] args) throws Exception

{

DatagramSocket sendSocket = new DatagramSocket();

DatagramSocket receSocket = new DatagramSocket(4353);

new Thread(new Send(sendSocket)).start();

new Thread(new Rece(receSocket)).start();

}

}

 

上一篇:JavaSE-21.2.2【案例-UDP通信程序(“多人聊天室”)】


下一篇:交叉验证(Cross Validation)简介