国产片侵犯亲女视频播放_亚洲精品二区_在线免费国产视频_欧美精品一区二区三区在线_少妇久久久_在线观看av不卡

服務(wù)器之家:專注于服務(wù)器技術(shù)及軟件下載分享
分類導(dǎo)航

PHP教程|ASP.NET教程|JAVA教程|ASP教程|

服務(wù)器之家 - 編程語(yǔ)言 - JAVA教程 - Java基于socket服務(wù)實(shí)現(xiàn)UDP協(xié)議的方法

Java基于socket服務(wù)實(shí)現(xiàn)UDP協(xié)議的方法

2019-12-19 13:34wo_soul JAVA教程

這篇文章主要介紹了Java基于socket服務(wù)實(shí)現(xiàn)UDP協(xié)議的方法,通過兩個(gè)簡(jiǎn)單實(shí)例分析了java通過socket實(shí)現(xiàn)UDP發(fā)送與接收的技巧,需要的朋友可以參考下

本文實(shí)例講述了Java基于socket服務(wù)實(shí)現(xiàn)UDP協(xié)議的方法。分享給大家供大家參考。具體如下:

示例1:

接收類:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
package com.socket.demo;
import java.io.IOException;
import java.net.DatagramPacket;
import java.net.DatagramSocket;
public class UDPReceiveDemo {
 public static void main(String[] args) throws IOException{
  System.out.println("接收端啟動(dòng)…………");
 /*
  2、建立UDP的socket的服務(wù),必須明確一個(gè)端口號(hào)
  3、創(chuàng)建數(shù)據(jù)包,用于儲(chǔ)存接收到的數(shù)據(jù),方便用數(shù)據(jù)包對(duì)象的方法解析這些數(shù)據(jù)
  4、使用DatagramSocket的receive方法將接收到的數(shù)據(jù)存儲(chǔ)到數(shù)據(jù)包中
  5、通過數(shù)據(jù)包的方法解析數(shù)據(jù)包中的數(shù)據(jù)
  5、關(guān)閉socket服務(wù)
  */
  //udpsocket服務(wù),使用DatagramSocket對(duì)象
  DatagramSocket ds=new DatagramSocket(10002);
  //使用DatagramPacket將數(shù)據(jù)封裝到該對(duì)象中
  byte[] buf=new byte[1024];
  DatagramPacket dp=new DatagramPacket(buf, buf.length);
  //通過udp的socket服務(wù)將數(shù)據(jù)包發(fā)送出去,通過send方法
  ds.receive(dp);
  //通過數(shù)據(jù)包的方法解析數(shù)據(jù)包中的數(shù)據(jù),比如,地址、端口、數(shù)據(jù)內(nèi)容等
  String ip=dp.getAddress().getHostAddress();
  //String name=dp.getAddress().getHostName();
  int port=dp.getPort();
  String text=new String(dp.getData(),0,dp.getLength());
  //System.out.println("-----"+ip+"-----"+name+"-----"+port+"-----"+text);
  System.out.println("-----"+ip+"----------"+port+"-----"+text);
  //關(guān)閉資源
  ds.close();
 }
}

發(fā)送類:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
package com.socket.demo;
import java.io.IOException;
import java.net.DatagramPacket;
import java.net.DatagramSocket;
import java.net.InetAddress;
import java.net.SocketException;
import java.net.UnknownHostException;
public class UDPSendDemo {
 public static void main(String[] args) throws IOException{
  System.out.println("發(fā)送端啟動(dòng)…………");
 /*
  * 1、創(chuàng)建udp傳輸?shù)陌l(fā)送端
  2、建立UDP的socket的服務(wù)
  3、將要發(fā)送的數(shù)據(jù)封裝到數(shù)據(jù)包中
  4、通過udp的socket服務(wù)將數(shù)據(jù)包發(fā)送出去
  5、關(guān)閉socket服務(wù)
  */
  //udpsocket服務(wù),使用DatagramSocket對(duì)象
  DatagramSocket ds=new DatagramSocket(8888);//監(jiān)聽端口
  //將要發(fā)送的數(shù)據(jù)封裝到數(shù)據(jù)包中
  String str="udp傳輸演示,go";
  //使用DatagramPacket將數(shù)據(jù)封裝到該對(duì)象中
  byte[] buf=str.getBytes();
  DatagramPacket dp=
    new DatagramPacket(buf, buf.length,InetAddress.getByName("192.168.1.100"),10002);
  //通過udp的socket服務(wù)將數(shù)據(jù)包發(fā)送出去,通過send方法
  ds.send(dp);
  //關(guān)閉資源
  ds.close();
 }
}

示例2:

接收類:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
package com.socket.demo;
import java.io.IOException;
import java.net.DatagramPacket;
import java.net.DatagramSocket;
public class UDPReceiveDemo2 {
 public static void main(String[] args) throws IOException{
  System.out.println("接收端啟動(dòng)…………");
 /*
  2、建立UDP的socket的服務(wù),必須明確一個(gè)端口號(hào)
  3、創(chuàng)建數(shù)據(jù)包,用于儲(chǔ)存接收到的數(shù)據(jù),方便用數(shù)據(jù)包對(duì)象的方法解析這些數(shù)據(jù)
  4、使用DatagramSocket的receive方法將接收到的數(shù)據(jù)存儲(chǔ)到數(shù)據(jù)包中
  5、通過數(shù)據(jù)包的方法解析數(shù)據(jù)包中的數(shù)據(jù)
  5、關(guān)閉socket服務(wù)
  */
  //udpsocket服務(wù),使用DatagramSocket對(duì)象
  DatagramSocket ds=new DatagramSocket(10003);
  while(true){
   //使用DatagramPacket將數(shù)據(jù)封裝到該對(duì)象中
   byte[] buf=new byte[1024];
   DatagramPacket dp=new DatagramPacket(buf, buf.length);
   //通過udp的socket服務(wù)將數(shù)據(jù)包發(fā)送出去,通過send方法
   ds.receive(dp);//阻塞式的。
   //通過數(shù)據(jù)包的方法解析數(shù)據(jù)包中的數(shù)據(jù),比如,地址、端口、數(shù)據(jù)內(nèi)容等
   String ip=dp.getAddress().getHostAddress();
   //String name=dp.getAddress().getHostName();
   int port=dp.getPort();
   String text=new String(dp.getData(),0,dp.getLength());
   //System.out.println("-----"+ip+"-----"+name+"-----"+port+"-----"+text);
   System.out.println("-----"+ip+"----------"+port+"-----"+text);
  }
  //關(guān)閉資源
  //ds.close();
 }
}

發(fā)送類:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
package com.socket.demo;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.DatagramPacket;
import java.net.DatagramSocket;
import java.net.InetAddress;
public class UDPSendDemo2 {
 public static void main(String[] args) throws IOException{
  System.out.println("發(fā)送端啟動(dòng)…………");
 /*
  * 1、創(chuàng)建udp傳輸?shù)陌l(fā)送端
  2、建立UDP的socket的服務(wù)
  3、將要發(fā)送的數(shù)據(jù)封裝到數(shù)據(jù)包中
  4、通過udp的socket服務(wù)將數(shù)據(jù)包發(fā)送出去
  5、關(guān)閉socket服務(wù)
  */
  //udpsocket服務(wù),使用DatagramSocket對(duì)象
  DatagramSocket ds=new DatagramSocket(9999);//監(jiān)聽端口
  //將要發(fā)送的數(shù)據(jù)封裝到數(shù)據(jù)包中
  //String str="udp傳輸演示,go";
  BufferedReader bufr=new BufferedReader(new InputStreamReader(System.in));//鍵盤輸入
  String line=null;
  //使用DatagramPacket將數(shù)據(jù)封裝到該對(duì)象中
  while((line=bufr.readLine())!=null){
   byte[] buf=line.getBytes();//
   DatagramPacket dp=
     new DatagramPacket(buf, buf.length,InetAddress.getByName("192.168.1.100"),10003);
   //通過udp的socket服務(wù)將數(shù)據(jù)包發(fā)送出去,通過send方法
   ds.send(dp);
   if("886".equals(line)){
    break;
   }
  }
  //關(guān)閉資源
  ds.close();
 }
}

運(yùn)行效果圖如下:

接收:

Java基于socket服務(wù)實(shí)現(xiàn)UDP協(xié)議的方法

發(fā)送:

Java基于socket服務(wù)實(shí)現(xiàn)UDP協(xié)議的方法

希望本文所述對(duì)大家的java程序設(shè)計(jì)有所幫助。

延伸 · 閱讀

精彩推薦
Weibo Article 1 Weibo Article 2 Weibo Article 3 Weibo Article 4 Weibo Article 5 Weibo Article 6 Weibo Article 7 Weibo Article 8 Weibo Article 9 Weibo Article 10 Weibo Article 11 Weibo Article 12 Weibo Article 13 Weibo Article 14 Weibo Article 15 Weibo Article 16 Weibo Article 17 Weibo Article 18 Weibo Article 19 Weibo Article 20 Weibo Article 21 Weibo Article 22 Weibo Article 23 Weibo Article 24 Weibo Article 25 Weibo Article 26 Weibo Article 27 Weibo Article 28 Weibo Article 29 Weibo Article 30 Weibo Article 31 Weibo Article 32 Weibo Article 33 Weibo Article 34 Weibo Article 35 Weibo Article 36 Weibo Article 37 Weibo Article 38 Weibo Article 39 Weibo Article 40
主站蜘蛛池模板: 国产毛片黄色片 | 欧美精品欧美精品系列 | 中文字幕第9页 | 日本中文一区二区 | 一区二区三区视频在线观看 | 精品无码久久久久国产 | 亚洲第一视频 | 四虎在线观看 | 欧美日韩干 | 国产区视频在线观看 | 国产午夜精品一区二区三区免费 | 日韩在线视频中文字幕 | 欧美一区二区三区在线观看视频 | 欧美精品系列 | 日本99精品 | 国产婷婷色一区二区三区 | 国产一区二区影院 | 日韩在线观看一区 | 精品国产一级 | 欧美激情一区二区三级高清视频 | 国产精品久久久久久久9999 | 精品国产青草久久久久福利 | www.久草.com | 91aiai| 亚洲精品影视 | 国产黄色av | 国产精品免费一区 | 精彩视频一区二区三区 | 久久亚洲视频 | 看亚洲a级一级毛片 | 自拍亚洲 | 欧美做爰一区二区三区 | 一级片视频在线观看 | 日韩欧美在 | 久草视频免费在线播放 | 一级片在线观看网站 | 欧美黄色一级片免费看 | 欧美不卡 | 91日韩精品一区二区三区 | 曰韩av| 亚洲综合日韩 |