最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

C#中簡單Socket編程的實(shí)現(xiàn)實(shí)例

 更新時(shí)間:2025年11月11日 09:28:24   作者:yugi987838  
本文主要介紹了C#中簡單Socket編程的實(shí)現(xiàn)實(shí)例,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

引言

Socket編程是網(wǎng)絡(luò)編程的基礎(chǔ),通過Socket編程,可以實(shí)現(xiàn)計(jì)算機(jī)之間的通信。本文將介紹如何在C#中進(jìn)行簡單的Socket編程,包括服務(wù)器端和客戶端的實(shí)現(xiàn)。示例將展示TCP連接的基本操作,適用于理解網(wǎng)絡(luò)通信的基本概念和實(shí)現(xiàn)方法。

準(zhǔn)備工作

確保您的開發(fā)環(huán)境中安裝了.NET SDK,可以通過Visual Studio或其他C#開發(fā)工具進(jìn)行編碼和調(diào)試。

創(chuàng)建Socket服務(wù)器

服務(wù)器需要監(jiān)聽特定端口,接受客戶端連接,并進(jìn)行數(shù)據(jù)收發(fā)。以下是一個(gè)簡單的C# Socket服務(wù)器示例:

服務(wù)器代碼

using System;
using System.Net;
using System.Net.Sockets;
using System.Text;
using System.Threading;
 
class Program
{
    static void Main(string[] args)
    {
        // 設(shè)置服務(wù)器IP和端口
        IPAddress ipAddress = IPAddress.Parse("127.0.0.1");
        int port = 11000;
 
        // 創(chuàng)建一個(gè)TcpListener對(duì)象
        TcpListener listener = new TcpListener(ipAddress, port);
 
        // 開始監(jiān)聽客戶端請(qǐng)求
        listener.Start();
        Console.WriteLine("服務(wù)器已啟動(dòng),等待客戶端連接...");
 
        while (true)
        {
            // 接受客戶端連接
            TcpClient client = listener.AcceptTcpClient();
            Console.WriteLine("客戶端已連接!");
 
            // 啟動(dòng)一個(gè)新線程處理客戶端請(qǐng)求
            Thread clientThread = new Thread(HandleClient);
            clientThread.Start(client);
        }
    }
 
    static void HandleClient(object obj)
    {
        TcpClient client = (TcpClient)obj;
 
        // 獲取網(wǎng)絡(luò)流
        NetworkStream stream = client.GetStream();
 
        byte[] buffer = new byte[1024];
        int bytesRead;
 
        // 讀取客戶端發(fā)送的數(shù)據(jù)
        while ((bytesRead = stream.Read(buffer, 0, buffer.Length)) != 0)
        {
            string data = Encoding.UTF8.GetString(buffer, 0, bytesRead);
            Console.WriteLine("收到客戶端消息: " + data);
 
            // 回應(yīng)客戶端消息
            byte[] response = Encoding.UTF8.GetBytes("服務(wù)器已收到消息");
            stream.Write(response, 0, response.Length);
        }
 
        // 關(guān)閉連接
        client.Close();
    }
}
?

創(chuàng)建Socket客戶端

客戶端需要連接服務(wù)器并發(fā)送數(shù)據(jù)。以下是一個(gè)簡單的C# Socket客戶端示例:

客戶端代碼

using System;
using System.Net.Sockets;
using System.Text;
 
class Program
{
    static void Main(string[] args)
    {
        // 設(shè)置服務(wù)器IP和端口
        string server = "127.0.0.1";
        int port = 11000;
 
        // 創(chuàng)建一個(gè)TcpClient對(duì)象
        TcpClient client = new TcpClient(server, port);
 
        // 獲取網(wǎng)絡(luò)流
        NetworkStream stream = client.GetStream();
 
        // 發(fā)送消息到服務(wù)器
        string message = "Hello, Server!";
        byte[] data = Encoding.UTF8.GetBytes(message);
        stream.Write(data, 0, data.Length);
        Console.WriteLine("發(fā)送消息到服務(wù)器: " + message);
 
        // 接收服務(wù)器回應(yīng)消息
        byte[] buffer = new byte[1024];
        int bytesRead = stream.Read(buffer, 0, buffer.Length);
        string response = Encoding.UTF8.GetString(buffer, 0, bytesRead);
        Console.WriteLine("收到服務(wù)器回應(yīng): " + response);
 
        // 關(guān)閉連接
        client.Close();
    }
}
?

運(yùn)行示例

  1. 先運(yùn)行服務(wù)器代碼。服務(wù)器將開始監(jiān)聽指定的IP和端口,等待客戶端連接。
  2. 然后運(yùn)行客戶端代碼??蛻舳藢⑦B接到服務(wù)器并發(fā)送消息。
  3. 服務(wù)器接收到消息后,將回應(yīng)客戶端,并在控制臺(tái)上顯示接收到的消息。
  4. 客戶端接收到服務(wù)器的回應(yīng)消息,并在控制臺(tái)上顯示

到此這篇關(guān)于C#中簡單Socket編程的實(shí)現(xiàn)實(shí)例的文章就介紹到這了,更多相關(guān)C#簡單Socket編程內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評(píng)論

伊春市| 会同县| 普洱| 将乐县| 武隆县| 和政县| 尉氏县| 称多县| 河北区| 江源县| 宾川县| 商城县| 班戈县| 广州市| 康乐县| 广安市| 体育| 镇雄县| 沈阳市| 彩票| 新和县| 内丘县| 桦川县| 蒙城县| 汉川市| 邢台县| 蓬莱市| 青神县| 康定县| 高安市| 农安县| 从江县| 浪卡子县| 博爱县| 济南市| 昆山市| 阿鲁科尔沁旗| 江华| 班玛县| 武乡县| 郧西县|