91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

C#如何實現TCP/IP通信

c#
小樊
177
2024-09-14 23:25:25
欄目: 編程語言

在C#中,可以使用System.Net.Sockets命名空間中的類來實現TCP/IP通信。下面是一個簡單的示例,展示了如何創建一個TCP服務器和客戶端進行通信。

首先,我們創建一個TCP服務器:

using System;
using System.Net;
using System.Net.Sockets;
using System.Text;

namespace TcpServer
{
    class Program
    {
        static void Main(string[] args)
        {
            // 創建一個TcpListener實例,監聽指定的IP地址和端口
            TcpListener server = new TcpListener(IPAddress.Any, 8080);
            server.Start();

            Console.WriteLine("服務器已啟動,等待客戶端連接...");

            while (true)
            {
                // 當有客戶端連接時,接受連接并返回一個TcpClient實例
                TcpClient client = server.AcceptTcpClient();
                Console.WriteLine("客戶端已連接:" + client.Client.RemoteEndPoint);

                // 獲取客戶端的網絡流
                NetworkStream stream = client.GetStream();

                // 讀取客戶端發送的數據
                byte[] data = new byte[256];
                int i = stream.Read(data, 0, data.Length);

                // 將接收到的數據轉換為字符串
                string receivedData = Encoding.ASCII.GetString(data, 0, i);
                Console.WriteLine("接收到的數據: " + receivedData);

                // 向客戶端發送響應
                string response = "服務器已收到數據: " + receivedData;
                data = Encoding.ASCII.GetBytes(response);
                stream.Write(data, 0, data.Length);

                // 關閉客戶端連接
                client.Close();
            }
        }
    }
}

接下來,我們創建一個TCP客戶端:

using System;
using System.Net.Sockets;
using System.Text;

namespace TcpClient
{
    class Program
    {
        static void Main(string[] args)
        {
            // 創建一個TcpClient實例,連接到服務器
            TcpClient client = new TcpClient("127.0.0.1", 8080);

            // 獲取服務器的網絡流
            NetworkStream stream = client.GetStream();

            // 向服務器發送數據
            string sendData = "你好,這是一條來自客戶端的消息!";
            byte[] data = Encoding.ASCII.GetBytes(sendData);
            stream.Write(data, 0, data.Length);

            // 從服務器接收響應
            data = new byte[256];
            int i = stream.Read(data, 0, data.Length);

            // 將接收到的數據轉換為字符串
            string receivedData = Encoding.ASCII.GetString(data, 0, i);
            Console.WriteLine("接收到的響應: " + receivedData);

            // 關閉客戶端連接
            client.Close();
        }
    }
}

運行上述代碼,首先啟動TCP服務器,然后啟動TCP客戶端。服務器將接收到客戶端發送的數據,并向客戶端發送響應。客戶端將接收到服務器的響應并顯示在控制臺上。

0
利津县| 泾源县| 青川县| 渭南市| 永川市| 扎赉特旗| 进贤县| 孙吴县| 中超| 中方县| 财经| 平顶山市| 琼中| 临邑县| 仁寿县| 册亨县| 平泉县| 阿城市| 濮阳市| 保靖县| 西平县| 吉首市| 广丰县| 泰州市| 抚松县| 平顺县| 鄯善县| 湖南省| 武夷山市| 新绛县| 江川县| 莲花县| 工布江达县| 永顺县| 海兴县| 临夏市| 庐江县| 长武县| 东海县| 炉霍县| 五家渠市|