您的位置:首頁技術文章
文章詳情頁

java利用udp實現發送數據

瀏覽:5日期:2022-08-27 18:50:40

本文實例為大家分享了java利用udp實現發送數據的具體代碼,供大家參考,具體內容如下

1.udp的特點

數據以包的形式發送數據 udp是面向無連接的 udp會丟失數據,是一種不安全的連接 udp的傳輸速度較快

2.發送端

package cn.uu710.SocketTest;import java.net.DatagramPacket;import java.net.DatagramSocket;import java.net.InetAddress;import java.net.SocketException;public class Send1 { public static void main(String[] args) { try { DatagramSocket datagramSocket = new DatagramSocket(); String data = '這是張佑發送的消息!'; DatagramPacket datagramPacket = new DatagramPacket(data.getBytes(),data.getBytes().length,InetAddress.getLocalHost(),8088); //發送 System.out.println('正在準備發送……'); datagramSocket.send(datagramPacket); System.out.println('已發送……'); datagramSocket.close(); } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); } }}

3.接收端

package cn.uu710.SocketTest;import java.net.DatagramPacket;import java.net.DatagramSocket;import java.net.SocketException;import com.sun.org.apache.bcel.internal.generic.NEW;public class receive1 { public static void main(String[] args) { try { DatagramSocket datagramSocket = new DatagramSocket(8088); byte[] b = new byte[1024]; DatagramPacket datagramPacket = new DatagramPacket(b,b.length); System.out.println('正在準備接收……'); //未接收之前為阻塞狀態 datagramSocket.receive(datagramPacket); System.out.println('接收內容:'+new String(b,0,b.length)); System.out.println('已經接收……'); datagramSocket.close(); } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); } }}

4. 運行程序

先啟動接收端,再運行發送端啟動接收端后,程序并未停止,因為還未接收到消息

java利用udp實現發送數據

再啟動發送端,此時接收端成功接收到消息,之后程序停止

java利用udp實現發送數據

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持好吧啦網。

標簽: Java
相關文章:
国产综合久久一区二区三区