package com.hbsi.net;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.DatagramPacket;
import java.net.DatagramSocket;
import java.net.InetAddress;
import java.net.SocketException;
public class Chat{
public static void main(String[] args) {
Send s=new Send();
Receive r=new Receive();
Thread ts=new Thread(s);
Thread tr=new Thread(r);
ts.start();
tr.start();
}
}
//发送
class Send implements Runnable{
@Override
public void run() {
// TODO Auto-generated method stub
DatagramSocket ds;
BufferedReader br;
try {
ds = new DatagramSocket();
br=new BufferedReader(new InputStreamReader(System.in));
String line=null;
String line2=InetAddress.getLocalHost().toString();
while((line=br.readLine())!=null){
System.out.print(line2+"\n ");
if(line.equals("886")){
break;
}
byte[] buf=line.getBytes();
DatagramPacket dp=new DatagramPacket(buf, buf.length, InetAddress.getByName("192.168.49.255【接受信息人的IP】"),9009);
ds.send(dp);
}
ds.close();
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
//接收
class Receive implements Runnable{
public void run() {
while(true){
DatagramSocket ds;
try {
ds = new DatagramSocket(9009);
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()).trim();
System.out.println("\n"+ip+"--"+data);
}
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.DatagramPacket;
import java.net.DatagramSocket;
import java.net.InetAddress;
import java.net.SocketException;
public class Chat{
public static void main(String[] args) {
Send s=new Send();
Receive r=new Receive();
Thread ts=new Thread(s);
Thread tr=new Thread(r);
ts.start();
tr.start();
}
}
//发送
class Send implements Runnable{
@Override
public void run() {
// TODO Auto-generated method stub
DatagramSocket ds;
BufferedReader br;
try {
ds = new DatagramSocket();
br=new BufferedReader(new InputStreamReader(System.in));
String line=null;
String line2=InetAddress.getLocalHost().toString();
while((line=br.readLine())!=null){
System.out.print(line2+"\n ");
if(line.equals("886")){
break;
}
byte[] buf=line.getBytes();
DatagramPacket dp=new DatagramPacket(buf, buf.length, InetAddress.getByName("192.168.49.255【接受信息人的IP】"),9009);
ds.send(dp);
}
ds.close();
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
//接收
class Receive implements Runnable{
public void run() {
while(true){
DatagramSocket ds;
try {
ds = new DatagramSocket(9009);
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()).trim();
System.out.println("\n"+ip+"--"+data);
}
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}