1. 程式人生 > >Java Socket應用(五) 基於UDP的Socket通訊之客戶端

Java Socket應用(五) 基於UDP的Socket通訊之客戶端

UDPClient.java

package com.yijia;

import java.io.IOException;
import java.net.*;

/**
 * 建立時間:2018/10/4 15:44
 * 作者:
 * 郵箱:[email protected]
 *
 * 客戶端
 */
public class UDPClient {
    public static void main(String[] args) throws IOException {
        /**
         * 向伺服器端傳送資料
         */
        //1、定義伺服器的地址、埠號、資料
        InetAddress address = InetAddress.getByName("localhost");
        int port =8800;
        byte[] data = "使用者名稱:admin;密碼:123".getBytes();

        //2、建立資料報,包含傳送的資料資訊
        DatagramPacket packet = new DatagramPacket(data,data.length,address,port);//資料、資料長度、IP地址、埠號

        //3、建立DatagramSocket物件
        DatagramSocket socket = new DatagramSocket();

        //4、向伺服器端傳送資料報
        socket.send(packet);

        /**
         * 接收伺服器端響應的資料
         */
        //1、建立資料報,用於接收伺服器端響應的資料
        byte[] data2 = new byte[1024];
        DatagramPacket packet2 = new DatagramPacket(data2,data2.length);

        //2、接收伺服器端響應的資料
        socket.receive(packet2);

        //3、讀取資料
        String reply = new String(data2,0,packet2.getLength());
        System.out.println("我是客戶端,伺服器端響應的資料為:"+reply);

        //4、關閉資源
        socket.close();

    }
}