Sender
package com.seku.net;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.DatagramPacket;
import java.net.DatagramSocket;
import java.net.InetSocketAddress;
import java.nio.charset.StandardCharsets;
public class UpdSender {
public static void main(String[] args) throws IOException {
//需要一个插座
DatagramSocket socket = new DatagramSocket(8888);
//准备数据,读取控制台
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
while (true){
String date=reader.readLine();
byte[] file=date.getBytes();
//装包
DatagramPacket p = new DatagramPacket(file,0,file.length,new InetSocketAddress("localhost",6666));
//插座转接输出
socket.send(p);
if (date.equals("bye")){
break;
}} socket.close();
}
}
Receiver
package com.seku.net;
import java.io.IOException;
import java.net.DatagramPacket;
import java.net.DatagramSocket;
import java.net.SocketException;
public class UdpReceiver {
public static void main(String[] args) throws IOException {
//new一个插座
DatagramSocket s = new DatagramSocket(6666);
while(true){
//做一个字节数组口袋,和麻绳组成包裹
byte[] container=new byte[1024];
//拿到包裹d带回家
DatagramPacket d = new DatagramPacket(container,0,container.length);
//通过socket来进行操作
s.receive(d);
//从包裹中拿出口袋来,看
byte[] data =d.getData();
String text=new String(data,0,d.getLength());
System.out.println(text);
if (text.equals("bye")){
break;
}}
s.close();
}
}
通过URL下载网络资源