23,125
社区成员
发帖
与我相关
我的任务
分享
//发送端的代码
public class ChatSender extends Thread {
public void run() {
DatagramSocket socket = null;
try {
socket = new DatagramSocket();
BufferedReader keyReader = new BufferedReader(new InputStreamReader(System.in));
String line = null;
DatagramPacket packet = null;
while((line = keyReader.readLine())!=null){
packet = new DatagramPacket(line.getBytes(), line.getBytes().length, InetAddress.getByName("192.168.1.255"), 9090);
socket.send(packet);
}
} catch (Exception e) {
e.printStackTrace();
}finally{
socket.close();
}
}
}
public class ChatReceive extends Thread {
//接收端的代码
@Override
public void run() {
try {
DatagramSocket socket = new DatagramSocket(9090);
byte[] buf = new byte[1024];
DatagramPacket packet = new DatagramPacket(buf, buf.length);
while(true){
socket.receive(packet);
System.out.println(packet.getAddress().getHostAddress()+"说:"+ new String(buf,0,packet.getLength()));
}
} catch (IOException e) {
e.printStackTrace();
}
}
}
//调用代码
public class ChatMain {
public static void main(String[] args) {
ChatReceive receive = new ChatReceive();
ChatSender sender = new ChatSender();
receive.start();
sender.start();
}
}