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

溫馨提示×

c#socket通信怎么寫

小億
109
2023-07-26 16:04:02
欄目: 編程語言

在C#中進行Socket通信可以使用System.Net.Sockets.Socket類來實現。

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

服務器端:

csharp

using System;

using System.Net;

using System.Net.Sockets;

using System.Text;

public class Server

{

    public static void Main()

    {

        // 創建一個IP地址和端口號

        IPAddress ipAddress = IPAddress.Parse("127.0.0.1");

        int port = 8888;

        // 創建一個TCP監聽器

        TcpListener listener = new TcpListener(ipAddress, port);

        listener.Start();

        Console.WriteLine("服務器已啟動...");

        // 接受客戶端連接

        TcpClient client = listener.AcceptTcpClient();

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

        // 獲取網絡流

        NetworkStream networkStream = client.GetStream();

        // 接收消息

        byte[] buffer = new byte[1024];

        int bytesRead = networkStream.Read(buffer, 0, buffer.Length);

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

        Console.WriteLine("接收到的消息: " + message);

        // 發送響應消息

        string responseMessage = "Hello from the server!";

        byte[] responseData = Encoding.ASCII.GetBytes(responseMessage);

        networkStream.Write(responseData, 0, responseData.Length);

        Console.WriteLine("響應消息已發送.");

        // 關閉連接

        client.Close();

        listener.Stop();

    }

}

客戶端:

csharp

using System;

using System.Net;

using System.Net.Sockets;

using System.Text;

public class Client

{

    public static void Main()

    {

        // 創建一個IP地址和端口號

        IPAddress ipAddress = IPAddress.Parse("127.0.0.1");

        int port = 8888;


        // 創建一個TcpClient實例并連接服務器

        TcpClient client = new TcpClient();

        client.Connect(ipAddress, port);

        // 獲取網絡流

        NetworkStream networkStream = client.GetStream();

        // 發送消息

        string message = "Hello from the client!";

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

        networkStream.Write(requestData, 0, requestData.Length);

        Console.WriteLine("消息已發送.");

        // 接收響應消息

        byte[] buffer = new byte[1024];

        int bytesRead = networkStream.Read(buffer, 0, buffer.Length);

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

        Console.WriteLine("接收到的響應消息: " + responseMessage);

        // 關閉連接

        client.Close();

    }

}

在上述示例中,服務器端通過創建TCP監聽器并等待客戶端連接。一旦客戶端連接成功,服務器端就會接收到客戶端發送

的消息,并返回一個響應消息。客戶端通過創建TcpClient實例并連接到服務器,然后發送消息并接收響應消息。

請注意,這只是一個簡單的示例,可能需要根據你的具體需求進行適當修改。此外,還需要處理異常和錯誤情況,并進行

適當的錯誤處理和資源釋放。

0
高碑店市| 桂林市| 遵义县| 临沧市| 同德县| 金阳县| 东明县| 长乐市| 金山区| 吴忠市| 长宁县| 偏关县| 攀枝花市| 桓台县| 汾西县| 枣阳市| 宁晋县| 石台县| 伊宁市| 调兵山市| 灵寿县| 武宁县| 尉氏县| 甘孜县| 泾阳县| 定州市| 大名县| 平乡县| 建平县| 望都县| 承德市| 山阳县| 达孜县| 湄潭县| 新民市| 辽宁省| 堆龙德庆县| 瑞金市| 石柱| 新余市| 柯坪县|