亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

C#使用TCP協(xié)議實(shí)現(xiàn)數(shù)據(jù)發(fā)送和接受的方法

 更新時(shí)間:2024年04月16日 10:38:22   作者:妮妮學(xué)代碼  
這篇文章主要介紹了c#使用TCP協(xié)議實(shí)現(xiàn)數(shù)據(jù)發(fā)送和接受,使用TCP協(xié)議實(shí)現(xiàn)數(shù)據(jù)的發(fā)送和接受包括客戶端和服務(wù)端兩個(gè)部分,本文通過實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下

c#使用TCP協(xié)議實(shí)現(xiàn)數(shù)據(jù)發(fā)送和接受

使用TCP協(xié)議實(shí)現(xiàn)數(shù)據(jù)的發(fā)送和接受包括客戶端和服務(wù)端兩個(gè)部分;

1. 服務(wù)端代碼如下所示:

using System;
using System.Net;
using System.Net.Sockets;
using System.Text;
class Program
{
    static void Main()
    {
        // 設(shè)置服務(wù)器IP地址和端口號(hào)
        IPAddress ip = IPAddress.Parse("127.0.0.1");//寫入實(shí)際的IP地址
        int port = 8888;
        // 創(chuàng)建TCP監(jiān)聽器
        TcpListener listener = new TcpListener(ip, port);
        listener.Start();
        Console.WriteLine("等待客戶端連接...");
        // 接受客戶端連接
        TcpClient client = listener.AcceptTcpClient();
        Console.WriteLine("客戶端已連接");
        // 獲取網(wǎng)絡(luò)流
        NetworkStream stream = client.GetStream();
        // 讀取客戶端發(fā)送的數(shù)據(jù)
        byte[] buffer = new byte[1024];
        int bytesRead = stream.Read(buffer, 0, buffer.Length);
        string dataReceived = Encoding.ASCII.GetString(buffer, 0, bytesRead);
        Console.WriteLine("接收到數(shù)據(jù): " + dataReceived);
        // 向客戶端發(fā)送數(shù)據(jù)
        string dataToSend = "Hello, Client!";
        byte[] dataBytes = Encoding.ASCII.GetBytes(dataToSend);
        stream.Write(dataBytes, 0, dataBytes.Length);
        Console.WriteLine("已發(fā)送數(shù)據(jù): " + dataToSend);
        // 關(guān)閉連接
        stream.Close();
        client.Close();
        listener.Stop();
    }
}

2. 客戶端代碼:

using System;
using System.Net.Sockets;
using System.Text;
class Program
{
    static void Main()
    {
        // 設(shè)置服務(wù)器IP地址和端口號(hào)
        string serverIP = "127.0.0.1";
        int serverPort = 8888;
        // 創(chuàng)建TCP客戶端
        TcpClient client = new TcpClient();
        client.Connect(serverIP, serverPort);
        Console.WriteLine("已連接到服務(wù)器");
        // 獲取網(wǎng)絡(luò)流
        NetworkStream stream = client.GetStream();
        // 向服務(wù)器發(fā)送數(shù)據(jù)
        string dataToSend = "Hello, Server!";
        byte[] dataBytes = Encoding.ASCII.GetBytes(dataToSend);
        stream.Write(dataBytes, 0, dataBytes.Length);
        Console.WriteLine("已發(fā)送數(shù)據(jù): " + dataToSend);
        // 讀取服務(wù)器發(fā)送的數(shù)據(jù)
        byte[] buffer = new byte[1024];
        int bytesRead = stream.Read(buffer, 0, buffer.Length);
        string dataReceived = Encoding.ASCII.GetString(buffer, 0, bytesRead);
        Console.WriteLine("接收到數(shù)據(jù): " + dataReceived);
        // 關(guān)閉連接
        stream.Close();
        client.Close();
    }
}

總結(jié):上述示例使用服務(wù)器端創(chuàng)建一個(gè)TCP監(jiān)聽器,等待客戶端連接。當(dāng)客戶端連接后,服務(wù)器端從客戶端接收數(shù)據(jù),并向客戶端發(fā)送數(shù)據(jù)??蛻舳藙t連接到服務(wù)器,向服務(wù)器發(fā)送數(shù)據(jù),并接收服務(wù)器發(fā)送的數(shù)據(jù)。

到此這篇關(guān)于c#使用TCP協(xié)議實(shí)現(xiàn)數(shù)據(jù)發(fā)送和接受的文章就介紹到這了,更多相關(guān)c# TCP協(xié)議內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評(píng)論