Network Programming _UDP basic steps

// transmitting end
// 1. DatagramSocket using the specified port, create a transmitting end
// 2. Preparation data into a byte array
// 3. DatagramPacket encapsulated package, requiring a destination
// 4. Transmits parcels sent (DatagramPacket p )
// 5 release resources

package UDP开篇;

import java.net.DatagramPacket;
import java.net.DatagramSocket;
import java.net.InetSocketAddress;
import java.net.SocketException;
//发送端
//1.使用datagramSocket 指定端口,创建发送端
//2.准备数据转成字节数组
//3.封装成 DatagramPacket包裹,需要指定目的地
//4.发送包裹sent(DatagramPacket p)
//5.释放资源

```java

```java
public class UPD_Client {
public static void main(String[] args) throws Exception {
	System.out.println("客户端开始工作");
	//1.使用datagramSocket 指定端口,创建发送端
	DatagramSocket socket =new DatagramSocket(8888);
	//2.准备数据转成字节数组
	String str ="第一次测试,Hellow world";
	byte [] datas =str.getBytes();
	//3.封装成 DatagramPacket包裹,需要指定目的地
	DatagramPacket packet =new DatagramPacket(datas, datas.length,new InetSocketAddress("localhost", 9999));
	//4.发送包裹sent(DatagramPacket p)
	socket.send(packet);
	//5.释放资源
	socket.close();
}
}

// receiving end
// 1. DatagramSocket designated port to use to create the receiving end
// 2. DatagramPacket wrapped into a packaged preparation
// 3. Parcel receiving blocking the receive (DatagramPacket)
//. 4. Analytical data
// byte [] getDate ()
// getLength ()
// 5. release resources

package UDP开篇;

import java.net.DatagramPacket;
import java.net.DatagramSocket;
import java.net.SocketException;
//接收端
//1.使用datagramSocket 指定端口,创建接收端
//2.准备容器封装成 datagramPacket包裹
//3.阻塞式接收包裹receive(datagramPacket)
//4.分析数据
//byte[] getDate()
//		getlength()
//5.释放资源
public class UDP_Server {
public static void main(String[] args) throws Exception {
	System.out.println("服务器启动...");
	//1.使用datagramSocket 指定端口,创建接收端
	DatagramSocket serve =new DatagramSocket(9999);
	byte [] buf =new byte[1024*60];
	//2.准备容器封装成 datagramPacket包裹
	DatagramPacket pack =new DatagramPacket(buf, buf.length);
	//3.阻塞式接收包裹receive(datagramPacket)
	serve.receive(pack);
	//4.分析数据
	//byte[] getDate()
	//		getlength()
	byte [] datas=pack.getData();
	String str =new String(datas,0,datas.length);
	System.out.println(str);
	//5.释放资源
	serve.close();
	
}
}
``

Here Insert Picture Description

Published 27 original articles · won praise 5 · Views 634

Guess you like

Origin blog.csdn.net/qq_44620773/article/details/104194821