package com.zxw.udp;
import java.io.IOException;
import java.net.DatagramPacket;
import java.net.DatagramSocket;
import java.net.SocketException;
import java.util.Scanner;
public class Worker {
public static void main(String[] args) throws IOException {
System.out.println("工作人员");
//接收
Scanner sc=new Scanner(System.in);
DatagramSocket ds=new DatagramSocket(8888);
while(true) {
byte [] b=new byte[1024];
DatagramPacket dp=new DatagramPacket(b, b.length);
ds.receive(dp);
String s=new String(dp.getData(),0,dp.getLength());
System.out.println("客户说:"+s);
//发送
byte[] b2=sc.next().getBytes();
DatagramPacket dp2=new DatagramPacket(b2, b2.length, dp.getAddress(), dp.getPort());
ds.send(dp2);
if("bye".equals(s)) {
break;
}
}
ds.close();
}
}
package com.zxw.udp;
import java.io.IOException;
import java.net.DatagramPacket;
import java.net.DatagramSocket;
import java.net.InetAddress;
import java.util.Scanner;
public class Client {
public static void main(String[] args) throws IOException {
System.out.println("客户");
//创建DatagramSocket
DatagramSocket ds=new DatagramSocket(9999);
Scanner sc=new Scanner(System.in);
while(true) {
byte [] b=sc.next().getBytes();//要准备发送的数据
DatagramPacket dp=new DatagramPacket(b, b.length, InetAddress.getByName("127.0.0.1"), 8888);
ds.send(dp);
//接收
byte []b2=new byte[1024];
DatagramPacket dp2=new DatagramPacket(b2, b2.length);
ds.receive(dp2);
String s=new String(dp2.getData(), 0, dp2.getLength());
System.out.println("工作人员说:"+s);
if("bye".equals(s)) {
break;
}
}
ds.close();
}
}