初学网络,越简单约好。
import java.net.*;
public class UDPClient {
public static void main(String[] args) throws Exception{
DatagramSocket ds=new DatagramSocket();
String s="hi ! ";
byte[] bs=s.getBytes();
DatagramPacket letter1 = new DatagramPacket(bs,0,bs.length,InetAddress.getLocalHost(),10000);
ds.send(letter1);
byte[] bs2=new byte[100];
DatagramPacket receiveLetter=new DatagramPacket(bs2,0,bs2.length);
ds.receive(receiveLetter);
byte[] bs3=receiveLetter.getData();
int offset=receiveLetter.getOffset();
int length=receiveLetter.getLength();
String text=new String(bs3,offset,length);
System.out.println(text);
System.out.println(InetAddress.getLocalHost());
ds.close();
}
}
import java.net.*;
public class UDPServer {
public static void main(String[] args) throws Exception{
DatagramSocket ds=new DatagramSocket(10000);
while(true){
byte[] bs=new byte[100];
DatagramPacket receive=new DatagramPacket(bs,0,bs.length);
ds.receive(receive);
InetAddress address=receive.getAddress();
int port = receive.getPort();
String text="您好,这是服务器端发送的广播!";
byte[] bs2=text.getBytes();
DatagramPacket sendLetter=new DatagramPacket(bs2,0,bs2.length,address,port);
ds.send(sendLetter);
byte[] bs3=receive.getData();
int offset=receive.getOffset();
int length=receive.getLength();
String text1=new String(bs3,offset,length);
System.out.println(text1);
System.out.println("地址:"+InetAddress.getLocalHost()+"端口:"+port);
}
}
Socket编程---使用无连接的数据报(UDP) 进行通信
[url]http://whp0731.iteye.com/blog/470130[/url]
简单的UDP 聊天室
[url]http://www.iteye.com/topic/415867[/url]