中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

c#socket通信怎么實現

小億
95
2023-07-26 17:06:25
欄目: 編程語言

在C#中實現Socket通信有多種方式,其中常見的方式是使用System.Net.Sockets命名空間提供的類。

下面是一個簡單的示例,演示了如何使用Socket進行客戶端和服務器之間的通信:

1. 客戶端代碼:

csharp

using System;

using System.Net;

using System.Net.Sockets;

using System.Text;

public class Client {

    public static void Main() {

        // 創建一個Socket對象

        Socket clientSocket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);

        // 連接到服務器

        IPAddress serverIP = IPAddress.Parse("服務器IP地址");

        int serverPort = 12345; // 服務器端口號

        IPEndPoint serverEndPoint = new IPEndPoint(serverIP, serverPort);

        clientSocket.Connect(serverEndPoint);

        // 發送數據到服務器

        string message = "Hello, server!";

        byte[] data = Encoding.ASCII.GetBytes(message);

        clientSocket.Send(data);

        // 接收服務器的響應

        byte[] buffer = new byte[1024];

        int bytesRead = clientSocket.Receive(buffer);

        string response = Encoding.ASCII.GetString(buffer, 0, bytesRead);

        Console.WriteLine("服務器響應:" + response);

        // 關閉Socket連接

        clientSocket.Shutdown(SocketShutdown.Both);

        clientSocket.Close();

    }

}

2. 服務器端代碼:

csharp

using System;

using System.Net;

using System.Net.Sockets;

using System.Text;

public class Server {

    public static void Main() {

        // 創建一個Socket對象

        Socket serverSocket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);

        // 綁定IP地址和端口號

        IPAddress serverIP = IPAddress.Parse("服務器IP地址");

        int serverPort = 12345; // 服務器端口號

        IPEndPoint serverEndPoint = new IPEndPoint(serverIP, serverPort);

        serverSocket.Bind(serverEndPoint);

        // 開始監聽客戶端連接

        serverSocket.Listen(10);

        Console.WriteLine("等待客戶端連接...");

        // 接受客戶端連接請求

        Socket clientSocket = serverSocket.Accept();

        // 接收客戶端發送的數據

        byte[] buffer = new byte[1024];

        int bytesRead = clientSocket.Receive(buffer);

        string request = Encoding.ASCII.GetString(buffer, 0, bytesRead);

        Console.WriteLine("客戶端請求:" + request);

        // 發送響應到客戶端

        string response = "Hello, client!";

        byte[] data = Encoding.ASCII.GetBytes(response);

        clientSocket.Send(data);

        // 關閉Socket連接

        clientSocket.Shutdown(SocketShutdown.Both);

        clientSocket.Close();

        serverSocket.Close();

    }

}

在使用上述示例代碼時,需要將服務器IP地址替換為實際的服務器IP地址。客戶端和服務器端通過指定的IP地址和端口

號進行通信。

以上是一個簡單的示例,你可以根據需求擴展和修改代碼,以滿足實際的應用場景。

0
开原市| 米易县| 谷城县| 静宁县| 大田县| 松阳县| 怀安县| 宜州市| 天台县| 冕宁县| 德清县| 九龙县| 大厂| 叙永县| 延边| 鄄城县| 徐闻县| 英吉沙县| 太和县| 金阳县| 太白县| 康保县| 陵川县| 长岭县| 民丰县| 鹤庆县| 视频| 乌什县| 都安| 柳州市| 兴山县| 莱州市| 滦南县| 古蔺县| 大余县| 屯门区| 汝城县| 友谊县| 宝兴县| 铁岭市| 治县。|