激情久久久_欧美视频区_成人av免费_不卡视频一二三区_欧美精品在欧美一区二区少妇_欧美一区二区三区的

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - Java教程 - java Socket UDP實例詳解

java Socket UDP實例詳解

2020-08-02 11:55lqh Java教程

這篇文章主要介紹了java Socket UDP實例詳解的相關資料,需要的朋友可以參考下

UDP編程示例

服務器端:

java" id="highlighter_968619">
?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
package socket;
 
import java.io.IOException;
import java.net.DatagramPacket;
import java.net.DatagramSocket;
import java.net.SocketException;
 
public class UDPServer {
 
   
  public static void main(String[] args) throws IOException {
    byte[] buf = new byte[1024];
    DatagramPacket dp = new DatagramPacket(buf, buf.length);//聲明一個用來接收數據的“包裹”
    DatagramSocket ds = new DatagramSocket(5678);//指定的是UDP中的端口號5678,在TCP中,還有另外一個端口號為5678的端口
    while(true){
      ds.receive(dp); //阻塞式的
      System.out.println(new String(buf,0,dp.getLength()));//dp中獲取的數據的長度
    }
 
  }
 
}

客戶端:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
package socket;
 
import java.io.IOException;
import java.net.DatagramPacket;
import java.net.DatagramSocket;
import java.net.InetSocketAddress;
import java.net.SocketException;
 
public class UDPClient {
 
  public static void main(String[] args) throws IOException {
    byte[] buf = new String("Hello").getBytes();
    //UDP是無連接的,所以要在發送的數據包裹中指定要發送到的ip:port
    DatagramPacket dp = new DatagramPacket(buf, buf.length, new InetSocketAddress("127.0.0.1", 5678));
    DatagramSocket ds = new DatagramSocket(9999); //指明發送端的端口號
    ds.send(dp);
    ds.close();
  }
 
}

說明:

1. 嚴格意義上來講,UDP沒有server和client之分,不像TCP中有ServerSocket和Socket,UDP中只有DatagramSocket。

2. UDP和TCP的端口是分開的,例如UDP有一個端口號為5678的端口,TCP也有一個端口號為5678的端口。

3. UDP是無連接的,所以要在發送的數據包裹中指定要發送到的ip:port。

4. 如果要發送long、int等類型的數據,則需要使用到ByteArrayOutputStream、DataOutputStream、ByteArrayInputStream、ByteArrayInputStream流類型,如下:

服務器端:

?
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
package socket;
 
import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.IOException;
import java.net.DatagramPacket;
import java.net.DatagramSocket;
import java.net.SocketException;
 
public class UDPServer {
 
   
  public static void main(String[] args) throws IOException {
    byte[] buf = new byte[1024];
    DatagramPacket dp = new DatagramPacket(buf, buf.length);
    DatagramSocket ds = new DatagramSocket(5678);
    ByteArrayInputStream bais = null;
    DataInputStream dos = null;
    while(true){
      ds.receive(dp); 
      bais = new ByteArrayInputStream(buf);
      dos = new DataInputStream(bais);
      System.out.println(dos.readLong());
    }
 
  }
 
}

客戶端:

?
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
package socket;
 
import java.io.ByteArrayOutputStream;
import java.io.DataOutputStream;
import java.io.IOException;
import java.net.DatagramPacket;
import java.net.DatagramSocket;
import java.net.InetSocketAddress;
import java.net.SocketException;
 
public class UDPClient {
 
  public static void main(String[] args) throws IOException {
    byte[] buf = null;
    long l = 100000L;
    ByteArrayOutputStream baos = new ByteArrayOutputStream();
    DataOutputStream dos = new DataOutputStream(baos);
    dos.writeLong(l);
    buf = baos.toByteArray();
    DatagramPacket dp = new DatagramPacket(buf, buf.length, new InetSocketAddress("127.0.0.1", 5678));
    DatagramSocket ds = new DatagramSocket(9999); 
    ds.send(dp);
    ds.close();
 
 
        dos.close();
  }
 
}

感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!

原文鏈接:http://blog.csdn.net/xiangwanpeng/article/details/53214071

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 国产精品久久久久久久久久久久久久久 | 免费国产wwwwwww网站 | www.精品在线 | 龙的两根好大拔不出去h | 91成人在线免费视频 | 国产亚洲精品久久 | 国产免费让你躁在线视频 | 亚洲网站在线观看视频 | 国产91久久久 | 九九热精 | 天天色图片 | 久久成人动漫 | 久久美女免费视频 | 亚洲国产一区二区三区 | 国产一区二区免费看 | 欧美成人午夜一区二区三区 | 亚洲精品久久久久久久久久 | 久久骚 | 久久久一区二区精品 | 一区二区三区视频在线观看 | 2017亚洲男人天堂 | 国产九色在线播放九色 | 日韩色视频在线观看 | 狠狠干网站 | 福利免费观看 | 日日摸夜夜添夜夜添牛牛 | 精品国产一区二区三区免费 | 欧美精品a∨在线观看不卡 午夜精品影院 | av中文字幕免费在线观看 | 久久久噜噜噜久久熟有声小说 | 国产精品视频一区二区噜噜 | 久久国产精品久久久久久电车 | 羞羞视频免费网站日本动漫 | 精品久久久久久久久亚洲 | 中文字幕在线观看视频一区 | 日日操日日操 | 亚洲视色 | 中文字幕在线观看网址 | 一级成人欧美一区在线观看 | 久草在线视频免费播放 | 国产交换3p国产精品 |