java网络编程案例9-1模拟微信聊天
代码如下:
SendTask类:
package GGS3;
import java.net.DatagramPacket;
import java.net.DatagramSocket;
import java.net.InetAddress;
import java.util.Scanner;
public class SendTask implements Runnable{
private int sendport;
public SendTask(int sendport) {
this.sendport=sendport;
}
public void run() {
try {
DatagramSocket ds=new DatagramSocket();
Scanner sc=new Scanner(System.in);
while(true) {
String data=sc.nextLine();
byte[] buf=data.getBytes();
DatagramPacket dp=new DatagramPacket(buf, buf.length,InetAddress.getByName("127.0.0.255"),sendport);
ds.send(dp);
}
} catch (Exception e) {
// TODO: handle exception
e.printStackTrace();
}
}
}
ReceiveTask类:
package GGS3;
import java.net.DatagramPacket;
import java.net.DatagramSocket;
public class ReceiveTask implements Runnable {
private int receivePort;
public ReceiveTask(int receivePort) {
this.receivePort=receivePort;
}
public void run() {
try {
DatagramSocket ds=new DatagramSocket(receivePort);
byte[] buf=new byte[1024];
DatagramPacket dp=new DatagramPacket(buf, buf.length);
while(true) {
ds.receive(dp);
String str=new String(dp.getData(),0,dp.getLength());
System.out.println("收到"+dp.getAddress().getHostAddress()+"发送的数据"+str);
}
} catch (Exception e) {
// TODO: handle exception
e.printStackTrace();
}
}
}
WaChat类:
代码运行如下:
上一篇:
Java架构师技术进阶路线图
下一篇:
【java】模拟微信聊天(网络编程)
